Я пытаюсь запустить этот скрипт perl через java. ниже мой сценарийPerl Script через JAVA Ошибка
public class Log {
public static void main(String[] args) throws IOException {
Process proc =null;
try
{
String[] commandAndArgs = {
"cmd","/c","C:\\Users\\myscipt.pl"
};
proc = Runtime.getRuntime().exec(commandAndArgs);
int returncode = proc.waitFor();
if(proc.exitValue() == 0)
{
System.out.println("Command Successful");
try
{
BufferedReader input = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line="";
System.out.println("Process Executed"+returncode);
while ((line = input.readLine()) != null) {
System.out.println(line);
}
}
catch (IOException e) {
e.printStackTrace();
}
}
else{
System.out.println("Process Executed"+returncode);
System.out.println("Command Failure");
}
}
catch(Exception t)
{
t.printStackTrace();
System.out.println("Exception: "+ t.toString());
}
finally
{
proc.destroy();
}
}
}
Поэтому, когда я выполняю этот скрипт, он работает отлично. Но как только я заменяю сценарий ниже строки
Это бросает мне код возврата 2. Итак, где я ошибаюсь?
я попробовал это раньше б это тоже не работает. –
Нет никакой разницы между передачей как массива «perl», «C: \ Users \ myscipt.pl» и передачей его как строки «perl C: \\ Users \\ myscipt.pl» – BatScream
@ Kushal Kumar, у вас есть perl в переменной PATH? –