2010-05-03 6 views
1

J'utilise le code ci-dessous dans mon application ...Process.waitFor() ne semble pas retourner la bonne valeur

Process process = Runtime.getRuntime().exec(
    "perl " + perlScript + " " + project + " " + fileName); 
: 
: 
: 
result = process.waitFor(); 
: 
: 

et ce résultat donne le code 2 à chaque fois ..... tout exécuter l'application.

quelle pourrait être la raison du "code raison" ???

Merci à l'avance

+0

Le résultat de 'waitFor' vient de' perl', donc cela n'a rien à voir avec java. Le re-marquage serait une bonne idée. Vous devrez probablement nous montrer aussi le script Perl. –

+0

Est-ce que 2 est le code de retour de Perl, ou le script Perl? Le script Perl s'exécute-t-il correctement? –

+0

nous utilisons le fichier perl pour valider le fichier d'entrée. Maintenant, parfois, il donne le code retour à 0 (signifie succès) et parfois il donne non zéro (signifie échec) pour le même fichier. – user306689

Répondre

2

Le script perl que vous appelez est de retour la valeur 2. Vous devez regarder le script Perl pour déterminer ce que la valeur signifie - il n'y a pas moyen générique de savoir pourquoi un programme donné renvoie une valeur donnée

Questions connexes