从罐子里运行一个罐子

时间:2013-06-22 22:02:57

标签: java jar process executable-jar processbuilder

我有一个java程序,我有这个代码,

JOptionPane.showConfirmDialog(null, "TEST");
String pathToJar = ClassRewriter.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()+"ClassRewriter.class";
System.out.println(pathToJar);
ProcessBuilder pb = new ProcessBuilder("javaw "+pathToJar);
Process process = pb.start();

我在一个名为classrewriter的类中有一个java程序,我试图从它的main方法中启动该程序,但它似乎没有用。

1 个答案:

答案 0 :(得分:3)

public int runCommand(String command) throws Exception 
    {
    Process s= Runtime.getRuntime().exec(command);
    return s.exitValue();
}

所以你写道:

 runCommand("java -jar "+pathToJar);

但不建议这样做,因为并非所有操作系统都支持它(例如linux或mac)。