1

作成した 2 つのプログラムを 1 つの .jar ファイルにマージしようとしています。1 つのプログラムは Java で記述された .jar で、2 つ目は c++ で記述された .exe です。両方のファイルを新しい .jar に入れ、このコードを書きましたが、機能しませんでした。このコードを .jar にエクスポートして実行すると、2 つのファイルのどちらも実行されず、cmd で「merged.jar にメイン マニフェスト属性がありません」というエラーが表示されました。Eclipseで実行すると完全に機能しましたが。

  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 の一時的な場所にドロップし、実行後に削除することは可能でしょうか?

4

2 に答える 2

1

JAR File Specificationを見てください。

MANIFEST ファイルを更新して、「Main-Class」属性に main() メソッドを含むクラスを設定する必要があります。

于 2012-06-21T08:54:39.937 に答える
1

これを試すことができます:

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

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

    } catch (Exception e) {
        e.printStackTrace();
    }
于 2012-06-21T09:00:24.740 に答える