运行.jar打包的.exe文件

时间:2012-06-21 08:48:46

标签: java jar package embedded-resource runtime.exec

我正在尝试将我制作的2个程序合并到一个.jar文件中。一个程序是用java编写的.jar,第二个是用c ++编写的.exe。我把两个文件都放到了新的.jar中,编写了这段代码,但它没有用。当这个代码被导出到.jar并且没有运行2个文件时,我在cmd中收到错误“没有主要清单属性,在merged.jar中”。虽然它在日食中运行时效果很好。

  public class main
    {
        public static void main(String[] args) 
   {
      try 
   {
      Runtime.getRuntime().exec("cmd /c project1.jar");
      Runtime.getRuntime().exec("cmd /c project2.exe");
   }  
   catch(Exception exce)
     { 
     /*handle exception*/
      }
       }
   }

知道如何解决这个问题还是有其他方法可以解决这个问题?我是java的新手,所以想不出什么好的。也许可以将这些文件放到Windows中的临时位置并在执行后将其删除?

2 个答案:

答案 0 :(得分:1)

查看JAR File Specification

您必须更新MANIFEST文件,以使用包含main()方法的类填充“Main-Class”属性。

答案 1 :(得分:1)

你可以试试这个:

    String filePath = "C:/Path/to/my/file.exe";
    try {

        Process p = Runtime.getRuntime().exec(filePath);

    } catch (Exception e) {
        e.printStackTrace();
    }