java - 从java程序运行一个jar文件

标签 java jar runtime executable-jar

我正在尝试从另一个 Java 程序执行 jar 文件。我正在使用以下代码:

      try {
          Runtime runtime = Runtime.getRuntime();
          runtime.exec("path upto jar");
      } catch (Exception ex) {
          JOptionPane.showMessageDialog(null, "Exception occured" + ex);
      }

但是它不起作用。我试过谷歌,它给了我使用 ProcessBuilder 的示例,但这也不起作用。

最佳答案

使用 ProcessBuilder(java.lang.ProcessBuilder) 将解决您的问题。语法如下——

ProcessBuilder pb = new ProcessBuilder("java", "-jar", "absolute path upto jar");
Process p = pb.start();

您可以按如下方式将输入/输出/错误重定向到文件/从文件重定向

File commands = new File("absolute path to inputs file");
File dirOut = new File("absolute path to outputs file");
File dirErr = new File("absolute path to error file");

dirProcess.redirectInput(commands);
dirProcess.redirectOutput(dirOut);
dirProcess.redirectError(dirErr);

关于java - 从java程序运行一个jar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17985036/

相关文章:

java - 在Java中如何从另一个类(不是继承)调用一个类?

android - 将 .so 文件和 jar 包装器包含到 Android 项目中

java - 如何使用单独的 jar 覆盖类?

dynamic - FORTRAN 动态分配派生类型

java - 总是使用Final?

java - 这两个 JDBC Connectivity 之间有什么性能差异吗?

java - 获取特定月份的天数

java - 屏蔽控制台输入的密码: Java with nohup command

java - Runtime.exec 错误,但在 cmd 行中有效

algorithm - 选择算法中的 good pivot VS "bad pivot"有什么区别?