Execution dans un processus séparé

cs_chalumea Messages postés 3 Date d'inscription vendredi 22 août 2008 Statut Membre Dernière intervention 22 août 2008 - 22 août 2008 à 11:25
cs_chalumea Messages postés 3 Date d'inscription vendredi 22 août 2008 Statut Membre Dernière intervention 22 août 2008 - 22 août 2008 à 17:47
Bonjour,

je dois lancer la méthode main d'une librairie externe (fop), qui se
termine systématiquement par un System.exit, ce qui fait que la suite de
mon code ne s'exécute pas.

Quelle solution puis-je utiliser ?

Sachant qu'elle doit tourner sur tous les OS, et que j'ai déjà essayé de la lancer via
des classes implémentant Thread et Runnable, et que
le lancement par la voie d'un shell externe marche mais n'est pas top (=
on doit regarder sous quel os on est, etc...)

Merci!

4 réponses

indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
22 août 2008 à 12:03
Salut

Je te suggére d'utiliser Runtime.getInstance().exec(...);

Cette méthode te permet de lancer des commandes externes / programmes externes. De plus, il te retourne un objet de type process. Du coup, tu peux surveiller l'état de ton exectuion (si il est vivant, fini ...)

Tu trouveras plein d'exemples à ce sujet sur l'Internet

Voili voilà

le monde a des idées : la preuve, c'est qu'il y en a de mauvaises
ne comprends pas tout, mais je parle de tout : c'est ce qui compte
0
cs_chalumea Messages postés 3 Date d'inscription vendredi 22 août 2008 Statut Membre Dernière intervention 22 août 2008
22 août 2008 à 16:00
euh ça n'existe pas sous Java 1.6... ?
0
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
22 août 2008 à 17:24
0
cs_chalumea Messages postés 3 Date d'inscription vendredi 22 août 2008 Statut Membre Dernière intervention 22 août 2008
22 août 2008 à 17:47
c'est déjà une solution que j'ai étudiée, mais qui suppose lancer java depuis un nouveau shell, c'est à dire qu'elle est dépendante de l'OS utilisé (cmd /c java bin... pour windows, /bin/sh java bin ... ) pour linux, ce qui ne me plait que moyennement. Mais qui marche...
0
Rejoignez-nous