我在使用 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 文件夹)中,如果直接运行,可以正常工作,但这样我得到错误“找不到主类:程序”。我的代码中的错误在哪里?
提前致谢。
[编辑] 我得出的结论是我的 Program 类上的一些代码给出了错误。基本上只运行“干净”的主要。在 Eclipse 中,Program 类正在导入 jar 文件中的一些库。我不需要在 ProcessBuilder 中引用它吗?如果是这样,怎么做?