Sab*_*ari 1 java runtime batch-file
我只想在win7中使用java代码运行批处理文件.我可以使用代码运行.exe文件,但是你知道它不适用于批处理.问题出在哪儿?您知道甚至cmd.exe也不会以该命令启动.但我可以运行其他exe文件,我尝试了一些.代码是这样的(尝试和捕获就是这样):它们都没有工作!
Runtime.getRuntime().exec("cmd.exe /c demo.bat");
Runtime.getRuntime().exec("demo.bat");
Run Code Online (Sandbox Code Playgroud)
我尝试使用进程工作,我编写了下面的代码.它重新开始了
java.lang.IllegalThreadStateException:process has not exited
at java.lang.ProcessImpl.exitValue(Native Method)
at Test.Asli.main(Asli.java:38)
Run Code Online (Sandbox Code Playgroud)
这是代码:
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();
}
Run Code Online (Sandbox Code Playgroud)
请尝试以下方法:
String[] cmd = {"cmd.exe", "/c", "demo.bat");
Runtime.getRuntime().exec(cmd);
Run Code Online (Sandbox Code Playgroud)
我总是喜欢自己拆分命令和参数.否则,它是通过拆分可能不是你想要的空间来完成的.