Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在java中运行bat文件_Java_Batch File - Fatal编程技术网

无法在java中运行bat文件

无法在java中运行bat文件,java,batch-file,Java,Batch File,我尝试使用以下代码在Java中运行bat文件 Runtime.getRuntime().exec("run.bat", null, new File("C:\\test\\")); 我犯了以下错误 java.io.IOException: Cannot run program "run.bat" (in directory "C:\test"): CreateProcess error=2, The system cannot find the file specified at java.l

我尝试使用以下代码在Java中运行bat文件

Runtime.getRuntime().exec("run.bat", null, new File("C:\\test\\"));
我犯了以下错误

java.io.IOException: Cannot run program "run.bat" (in directory "C:\test"): CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
at java.lang.Runtime.exec(Runtime.java:617)
at java.lang.Runtime.exec(Runtime.java:450)
at stl_generator.Program.runCommandScript(Program.java:102)
at stl_generator.Program.createFile(Program.java:20)
at stl_generator.Program.main(Program.java:112)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:385)
at java.lang.ProcessImpl.start(ProcessImpl.java:136)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)
... 10 more
java.io.IOException:无法运行程序“run.bat”(在目录“C:\test”中):CreateProcess error=2,系统找不到指定的文件
位于java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
位于java.lang.Runtime.exec(Runtime.java:617)
位于java.lang.Runtime.exec(Runtime.java:450)
位于stl_generator.Program.runCommandScript(Program.java:102)
位于stl_generator.Program.createFile(Program.java:20)
位于stl_generator.Program.main(Program.java:112)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
位于com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
原因:java.io.IOException:CreateProcess error=2,系统找不到指定的文件
在java.lang.ProcessImpl.create(本机方法)
位于java.lang.ProcessImpl.(ProcessImpl.java:385)
在java.lang.ProcessImpl.start(ProcessImpl.java:136)
位于java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)
... 10多
我的文件存在于我声明的位置。 如何解决这个问题

提前谢谢

您可以试试这个

  Runtime.getRuntime().exec("cmd /c start run.bat", null, new File("C:\\Test\\"));
Runtime.getRuntime().exec(“cmd/c start c:\\test\\run.bat”);