我只想在win7中使用java代码运行批处理文件。我可以用代码运行.exe文件,但是你知道它不适用于批处理。哪里有问题?你甚至知道cmd.exe不会以该命令开始。但我可以运行其他的exe文件,我试过一些。代码是这样的(尝试和捕捉是):他们都没有工作!由java运行批处理文件
Runtime.getRuntime().exec("cmd.exe /c demo.bat");
Runtime.getRuntime().exec("demo.bat");
我试图做的工作,我写了下面的代码。它retuened
java.lang.IllegalThreadStateException:process has not exited
at java.lang.ProcessImpl.exitValue(Native Method)
at Test.Asli.main(Asli.java:38)
这是代码:
try{
Runtime rt = Runtime.getRuntime();
Process proc= rt.exec("C:\\Windows\\System32\\cmd.exe");
int b = proc.exitValue();
// int exitVal = proc.exitValue();
//System.out.println("Process exitValue: " + exitVal);}
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
那真的是你的代码?它无法编译。 – Mat
我确定这不是确切的代码(它有3个),这是如何失败的?一个错误消息,一个例外,....你对'exec执行的'Process'做了什么? '? –
是的,问题出在哪里?你得到了什么?异常?什么是堆栈跟踪? –