1

Linuxでjarを実行していますが、正常に動作します。コマンドは次のとおりです。

 java -Djava.ext.dirs=/home/amira/workspace/srd/remap/libs fr.srd.remap.compiler.main.Main ~/Desktop/TDP/VQHFACCOI/VQHFACCOI.xml ~/Desktop/TDP/VQHFACCOI

したがって、技術的な問題のために、Windowsマシンで実行する必要があるため、使用するコマンドは次のとおりです。

C:\Documents and Settings\walinbj\Desktop\remap-to-win>java -jar remap.jar -Djava.ext.dirs=Facture\libs fr.srd.remap.compiler.Main  C:\Documents and Settings\walinbj\Desktop\remap-to-win\Facture\TDPFAC010.xml

私はこのエラーが発生していますFailed to load Main-Class manifest attribute from remap.jar

4

2 に答える 2

2

javadocsから:

アプリケーションのエントリ ポイントの設定

アプリケーションが JAR ファイルにバンドルされている場合、JAR ファイル内のどのクラスがアプリケーションのエントリ ポイントであるかを示す何らかの方法が必要です。この情報は、マニフェストの Main-Class ヘッダーで提供します。一般的な形式は次のとおりです。

Main-Class: classname 値 classname は、アプリケーションのエントリ ポイントであるクラスの名前です。

エントリ ポイントは、署名 public static void main(String[] args) を持つメソッドを持つクラスであることを思い出してください。

マニフェストに Main-Class ヘッダーを設定したら、次の形式の java コマンドを使用して JAR ファイルを実行します。

java -jar JAR名 Main-Classヘッダに指定されたクラスのmainメソッドを実行します。

基本的に、jar にマニフェスト ファイルが必要であり、その中で Main-Class 属性を定義する必要があります。

マニフェスト バージョン: 1.0 作成者: 1.7.0_06 (Oracle Corporation) メイン クラス: fr.srd.remap.compiler.main.Main

次のコマンドで JAR ファイルを実行すると、Main の main メソッドが実行されます。

java -jar MyJar.jar

于 2013-08-12T09:49:38.803 に答える
2

jar ファイル remap.jar には、提供されたメイン クラス オプションを含む MANIFEST ファイルが含まれていません。メイン クラスを引数として指定し (Linux コマンド ラインで指定しました)、jar にクラスパスを指定する必要があります。そのために -jar オプションを使用することはできません。次のコマンドを使用するように変更してみてください。

C:\Documents and Settings\walinbj\Desktop\remap-to-win>java -classpath remap.jar -Djava.ext.dirs=Facture\libs fr.srd.remap.compiler.Main  C:\Documents and Settings\walinbj\Desktop\remap-to-win\Facture\TDPFAC010.xml
于 2013-08-12T09:46:02.860 に答える