私のMANIFEST.MFファイルは次のようになります
私の main() はクラスパスを出力します -
ClassLoader cl = ClassLoader.getSystemClassLoader();
URL[] urls = ((URLClassLoader)cl).getURLs();
for(URL url: urls){
System.out.println(url.getFile());
}
私はjarファイルを次のように実行しています-
java -jar "C:\Project-1.0-SNAPSHOT.jar"
jar ファイルを実行すると、マニフェスト ファイルに設定されているクラス パスが表示されません。への絶対パスしか表示されませんC:\Project-1.0-SNAPSHOT.jar
。どうしてこんなことに?明らかに、java.lang.NoClassDefFoundError
エラーのためにコードの実行に失敗します
maven-jar-plugin
このjarファイルの作成に使用していることに注意してください