4

こんにちは私は奇妙な問題を抱えています。アプリケーションを eclipse でパッケージ化して実行可能な jar ファイルを生成していますが、それを実行すると、「Error cant find main class [...]」というエラーが表示されます。

コマンドラインの例から同じパッケージを実行すると

java -jar app.jar

プログラムが起動します。

奇妙なのは、Java 7 環境でコンパイルされたアプリケーションでのみエラーが発生することです。

プロジェクトを Java 6 に設定すると、すべて正常に動作します。

Java 7 jar 実行可能ファイルを実行するにはどうすればよいですか?

助けてくれてありがとう。

4

4 に答える 4

1

マニフェスト ファイルでメイン クラスを設定する必要があります

サンプル マニフェスト ファイル

Manifest-Version: 1.0
Created-By: 1.3.1 (Sun Microsystems, Inc.)
Main-Class: com.package.MainClassName
Class-Path: oc4j.jar

サンプルjarファイルのように、これらすべてを設定したことを確認してください

于 2012-05-01T09:39:34.987 に答える
1

jre6の場合はjreのバージョンを確認してください。問題が発生する可能性があるため、jreをjre7に更新してみてください..

于 2012-05-01T07:52:11.450 に答える
0

この問題は、JVM が Jar ファイルに関連付けられたメイン クラスを見つけることができない場合に発生します。JVM は Manifest.mf の Main-Class 属性を使用して、関連付けられたメイン クラスを識別します。

JAr の作成に使用されたマニフェスト ファイルに Main-Class 属性を追加し忘れたようです。http://www.skylit.com/javamethods/faqs/createjar.html

于 2012-05-01T07:50:07.400 に答える
0

デフォルトでは、jar は実行可能ではありません

Java アーカイブはjar 、コードを 1 つのフォルダーに圧縮する形式のライブラリとしてよく使用されます。このようなコードは通常、アプリケーション (スタンドアロン) として実行されませんが、マニフェスト ファイルを使用して jar ファイルを実行可能なアプリケーションに変換する規定があります。

どのクラスに「main」メソッドが含まれているかを示すマニフェスト ファイルを作成するだけで、jar を実行可能にし、マニフェストを .jar に含めることができます。

于 2012-05-01T10:04:15.223 に答える