如何从Java执行批处理文件?
我想从Java程序执行批处理文件。
我正在使用以下命令。
Runtime.getRuntime().exec("server.bat");
但是问题是我想提供一个相对路径而不是绝对路径,以便我可以在任何组件上部署该Java项目。
项目的目录结构如下:
com |
project
|
------ parser
| |_____ Main.java
|
-------util
|_____ Server.bat
我想从“解析器”目录中的“ Main.java”文件中运行“ util”目录中的“ Server.bat”文件。
回答:
当Java运行时,您可以将Runtime.exec()与相对路径一起使用,相对方式是相对于当前用户调用JVM的目录。
这可能有效
Runtime.getRuntime().exec("cmd.exe", "/c", "./com/projct/util/server.bat");
如果从com的父目录启动java。
否则您必须计算绝对路径:
Runtime.getRuntime().exec("cmd.exe", "/c", System.getProperty("user.dir")+"/com/projct/util/server.bat");
我忘记了,阅读Runtime.exec()不会。
以上是 如何从Java执行批处理文件? 的全部内容, 来源链接: utcz.com/qa/413364.html