Windows找不到“;运行.bat“;文件,来自处理

Windows找不到“;运行.bat“;文件,来自处理,windows,batch-file,processing,Windows,Batch File,Processing,我正在尝试从处理中运行bat文件。但是,即使bat文件在处理文件的文件夹中,程序也找不到它 我的代码是: Runtime r = Runtime.getRuntime(); Process p1; try { p1 = r.exec("cmd /c start run.bat"); } catch(Exception c) { } 运行处理时出现的错误是:“Windows找不到“run.bat”文件。请确保名称拼写正确,然后重试。” 您能帮我吗?您没有指定路径。除非您已在注册表App pa

我正在尝试从处理中运行bat文件。但是,即使bat文件在处理文件的文件夹中,程序也找不到它

我的代码是:

Runtime r = Runtime.getRuntime();
Process p1;
try {
  p1 = r.exec("cmd /c start run.bat");
}
catch(Exception c) {
}
运行处理时出现的错误是:“Windows找不到“run.bat”文件。请确保名称拼写正确,然后重试。”


您能帮我吗?

您没有指定路径。除非您已在注册表
App path
中注册了
run.bat
,否则注册表项start不知道它在哪里


您必须告诉windows文件的位置。

因为您是从cmd而不是直接从Java运行start命令,所以必须指定完整路径。您可以使用
System.getProperty(“user.dir”)
获取Java项目文件夹的路径。如果批处理文件位于项目文件夹的根目录中,则代码如下所示:

p1 = r.exec("cmd /c start " + System.getProperty("user.dir") + "run.bat");

尝试运行
cmd/k cd
查看您所在的目录。由于您是从cmd运行start命令,因此必须指定run的完整路径。batSantiago谢谢!它起作用了