gpt4 book ai didi

Java ProcessBuilder

转载 作者:行者123 更新时间:2023-11-29 05:59:55 26 4
gpt4 key购买 nike

我在使用 ProcessBuilder 运行项目中的类时遇到问题。我的代码:

public class Main {
public static void main(String[] args) {
try {
String pathToJar = Main.class.getProtectionDomain().getCodeSource()
.getLocation().toURI().getPath();
ArrayList<String> params = new ArrayList<String>();
params.add("javaw");
params.add("-classpath");
params.add(pathToJar);
params.add("Program");
ProcessBuilder pb = new ProcessBuilder(params);
Process process = pb.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}

类程序在同一个项目(同一个 bin 文件夹)中,如果直接运行则工作正常但这样我得到错误“找不到主类:程序”。我的代码哪里出错了?

提前致谢。

[编辑]我得出的结论是我的程序类中的一些代码出错了。基本上只运行“干净”的主要。在 eclipse 中,Program 类正在导入 jar 文件中的一些库。我不需要在 ProcessBuilder 中引用它吗?如果是,怎么办?

最佳答案

响应您的编辑:

您可以通过将 params.add(pathToJar); 切换为 params.add(System.getProperty("java.class.path").concat("; 来添加当前路径").concat(pathToJar))‌ ;.

关于Java ProcessBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10568840/

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