が見つかりません:Javaのクラスローダは、私は次を含むJARファイルを持って想定するリソース
ProgJar
dir1
|dir1-1
| |Class-1-1
| |PClass1-1-2 Different file name from LibJar
Pdir2
|PClass2-1
ProgJarとLibJarの間だけで共有パッケージ構造は、 "DIR1/dir1-1/Class1-1-1" です。 Pの接頭辞が付いているものはすべてProgJar固有のもので、Lの接頭辞が付いているものはすべてLibJar固有のものです。
私はProjJarのライブラリとしてLibJarを使用しています。
これは私がProjJarで実行するコードの抜粋です:
ClassLoader clP = Pdir2.PClass2-1.class.getClassLoader();
ClassLoader clL = Ldir2.LClass2-1.class.getClassLoader();
URL u1 = clP.getResource("dir1/dir1-1");
URL u2 = clL.getResource("dir1/dir1-1");
System.out.printf(u1.toExternalForm());
System.out.printf(u2.toExternalForm());
私は、NetBeansでこれを実行すると、私は次のような出力が得られます。
Netbeans Output:
jar:file:/C:/path/to/project/lib/LibJar.jar!/dir1/dir1-1
jar:file:/C:/path/to/project/lib/LibJar.jar!/dir1/dir1-1
構築されたとして、私はProgJarとして実行すると、 NetBeansの外の瓶は、私が手:私は見ることを期待何
Jar Output:
jar:file:/C:/path/to/ProgJar/ProgJar.jar!/dir1/dir1-1
jar:file:/C:/path/to/ProgJar/ProgJar.jar!/dir1/dir1-1
は次のとおりです。
Netbeans Output:
jar:file:/C:/path/to/project/build/classes/dir1/dir1-1
jar:file:/C:/path/to/project/lib/LibJar.jar!/dir1/dir1-1
Jar Output:
jar:file:/C:/path/to/ProgJar/ProgJar.jar!/dir1/dir1-1
jar:file:/C:/path/to/ProgJar/libs/LibJar.jar!/dir1/dir1-1
は、私はいくつかの異なった記事を読んで、この1は、この特定の問題に多少関連すると思われる:
http://jeewanthad.blogspot.com/2014/02/how-to-solve-java-classpath-hell-with.html
どのように私は指定された出力を達成することができていますか?コードの下
私はこれを試して報告します。 – MrJman006
問題が進行しましたか? – code
私はまだこれを試していない。私は今週それに着こうとします。 – MrJman006