Runtime.getRuntime()。exec()无效

时间:2015-05-18 18:58:09

标签: java debugging

我正在尝试从java程序运行一个jar文件。当我执行以下代码时没有任何反应。 jar文件的名称是Testing.jar。文件路径是正确的,既没有抛出异常,也没有运行Testing.jar的程序。

package helloworld;

import java.io.IOException;
import java.util.Scanner;

public class HelloWorld {

    public static void main(String[] args) throws IOException {
        Runtime.getRuntime().exec("java -jar C:\\Users\\Home\\Documents\\NetBeansProjects\\Testing\\dist\\Testing.jar");
    }

}

这个相同的jar文件可以从CMD正确运行。我使用了以下命令:

java -jar "C:\\Users\\Home\\Documents\\NetBeansProjects\\Testing\\dist\\Testing.jar"

1 个答案:

答案 0 :(得分:3)

创建的进程没有自己的控制台,因此您需要提供一个以查看它正在运行。

Process testing= Runtime.getRuntime().exec("java -jar C:\\Users\\Home\\Documents\\NetBeansProjects\\Testing\\dist\\Testing.jar");
BufferedInputStream testOutput= new BufferedInputStream(testing.getInputStream());
int read = 0;
byte[] output = new byte[1024];
while ((read = testOutput.read(output)) != -1) {
    System.out.println(output[read]);
}