如何运行新进程,并在Java中关闭当前程序?

时间:2014-06-09 22:34:27

标签: java

public class App {
    public static void main(String[] args) {
       Process p = Runtime.getRuntime().exec("java -jar someOtherProgram.jar");
    }
}

这有效地运行了我的其他程序。但是,该程序(App)没有关闭。它仍然在运行(我可以告诉它,因为它不会让我在Eclipse中杀死它)。关闭此程序的唯一方法是终止与someOtherProgram.jar对应的进程。

我想要的是我的程序App运行另一个Java程序。然后自杀。

3 个答案:

答案 0 :(得分:5)

您可能想要使用(在Linux上)

nohup java -jar someOtherProgram.jar & 

并在Windows中

start /min java -jar someOtherProgram.jar

javaw -jar someOtherProgram.jar 

答案 1 :(得分:3)

在Windows下,我相信您需要使用类似......

的内容
cmd /B start "" java -jar someOtherProgram.jar

请记住,如果您的路径包含空格,则需要引用它,例如

cmd /B start "" java -jar "path to your/program/someOtherProgram.jar"

答案 2 :(得分:1)

我想到的唯一方法是使用exit()方法。它会自行关闭。

System.exit(0);