1

Unix で実行する必要があるクライアント アプリケーションがあります。Windows では問題なく動作しますが、UNIX では NoClassDefFound 例外が発生します。これが私のマニフェストファイルです:

Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.5 Created-By: 2.3 (IBM Corporation) Main-Class: com.main.Client Class-Path: lib/commons-lang-2.3.jar lib/commons-io -1.3.2.jar lib/comm ons-logging-api-1.1.jar lib/log4j-1.2.12.jar

そして Client.jar 構造:

com com/main lib meta-inf

それを実行するには、以下のコマンドを使用します。

$JAVA_HOME/jre/bin/java -jar Client.jar

Windowsでは問題なく動作します。どういうわけか、マニフェストを正しく読んでいないと思います。助けてください!ありがとう!

4

2 に答える 2

0

おそらく、meta-inf フォルダーが小文字になっているためでしょうか?

于 2010-10-29T14:10:20.777 に答える
0

1 つの方法は、プログラムを実行しているユーザーに対して CLASSPATH 変数を定義したことを確認することです。

$ echo $CLASSPATH

上記から何も表示されない場合は、エクスポートします

$ export CLASSPATH="/lib/commons-lang-2.3.jar:/your/other/paths"
于 2010-01-07T08:41:30.123 に答える