当前位置: 首页 > 知识库问答 >
问题:

E:java.io.IOException:无法运行程序"java-jarbg.jar": CreateProcess error=2,系统找不到文件

姬心思
2023-03-14

我有一个名为bg.jar的jar文件,它打印一些数字。我想从java程序调用bg.jar。我使用了这个代码

public class bg1 {
public static void main(String[] args) {
    try{
     //  Process ps = Runtime.getRuntime().exec("java -jar bg.jar");
      ProcessBuilder builder = new ProcessBuilder("java -jar bg.jar");
      Process process = builder.start();

    }catch(Exception e){
        System.out.println("e: "+ e.toString());
    }
  }
}

我添加bg.jar在库文件夹的bg1项目.但是当我运行bg1.class它给我这个错误:

e: java.io.IOException: 無法運行程程 “java -jar bg.jar”: CreateProcess error=2, 系統找不到指定的檔案

我怎么能把bg.jar从bg1调用.class

共有2个答案

曾皓
2023-03-14

ProcessBuilder builder = new ProcessBuilder(“java -jar bg.jar”);

空格在process builder命令中不起作用,我尝试使用逗号分隔的单词,它起作用了。

类似于“make macosx”命令-

ProcessBuilder builder=新的ProcessBuilders(“make”,“macosx”);

易和怡
2023-03-14

我认为文件找不到错误是系统找不到“java”可执行文件。一种方法是将“java”目录路径添加到环境变量path中。要找到该变量,右击"我的电脑"/高级系统设置/环境变量/系统变量。然后打开一个新的控制台,运行上面的Java程序。

另一种方法可能是将jar文件加载到Java程序中。然后在 Java 代码中运行静态 main 方法。要动态加载 java 文件,请参阅如何在运行时加载 jar 文件。包含 main 方法的类可以通过解析 META-INF/MANIFEST 找到。jar 文件中的 MF 文件。

 类似资料: