gpt4 book ai didi

java - 如何从java执行批处理文件?

转载 作者:行者123 更新时间:2023-12-02 12:25:41 26 4
gpt4 key购买 nike

我想从 java 程序执行批处理文件。

我正在使用以下命令。

Runtime.getRuntime().exec("server.bat");

但问题是我想提供一个相对路径而不是绝对路径,以便我可以在任何组件上部署该 java 项目。

项目的dir结构如下:

com
|
project
|
------ parser
| |_____ Main.java
|
-------util
|_____ Server.bat

我想从“parser”目录中的“Main.java”文件运行“util”目录中的“Server.bat”文件。

最佳答案

您可以使用ProcessBuilder为了这。它提供了比 exec 更多的控制。特别是,它允许使用方法 directory 设置工作目录。

示例:

ProcessBuilder pb = new ProcessBuilder("server.bat");
pb.directory(new File(deployDir + "\\com\\project\\util"));
Process p = pb.start();
int exitStatus = p.waitFor();

当然,您的应用程序必须从某个地方获取deployDir。它可以在环境中设置,在应用程序配置文件中设置,可以是当前用户目录或其他任何内容。

关于java - 如何从java执行批处理文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1421143/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com