クラスパスでリソースを検索した後、次の URL を取得しました。
bundleresource://23.fwk1186515174/com/google/inject/Injector.class
どのバンドルでリソースが提供されたかを調べるにはどうすればよいですか?
[編集]クラスパスに重複したクラスがある問題をデバッグしようとしています。私が使用しているコードは次のとおりです。
private void debugClassPath() {
String resource = "com/google/inject/Injector.class";
try {
Enumeration<URL> urls = getClass().getClassLoader().getResources( resource );
while( urls.hasMoreElements() ) {
System.out.println(urls.nextElement());
}
System.out.println("---");
urls = XtextRunner.class.getClassLoader().getResources( resource );
while( urls.hasMoreElements() ) {
System.out.println(urls.nextElement());
}
} catch( IOException e ) {
e.printStackTrace();
}
}
これにより、いくつかの URL が得られるcom.google.inject.Injector
ので、どのバンドルがそれらをクラスパスに追加するかを調べたいと思います。