从Java程序执行.jar文件

vfg*_*jrk 36 java jar executable-jar

我怎么能从java程序运行本地jar文件?

jar文件不在Java调用者程序的类路径中.

aio*_*obe 42

我建议你使用a ProcessBuilder并启动一个新的JVM.

这是让你入门的东西:

ProcessBuilder pb = new ProcessBuilder("/path/to/java", "-jar", "your.jar");
pb.directory(new File("preferred/working/directory"));
Process p = pb.start();
Run Code Online (Sandbox Code Playgroud)


小智 12

    Process proc = Runtime.getRuntime().exec("java -jar Validate.jar");
    proc.waitFor();
    // Then retreive the process output
    InputStream in = proc.getInputStream();
    InputStream err = proc.getErrorStream();

    byte b[]=new byte[in.available()];
    in.read(b,0,b.length);
    System.out.println(new String(b));

    byte c[]=new byte[err.available()];
    err.read(c,0,c.length);
    System.out.println(new String(c));
Run Code Online (Sandbox Code Playgroud)

  • 请使用System.err.println(new String(c)); 用于打印错误消息. (2认同)