2 つの jar ファイルがあります。通常、jarファイルからリソースを「解凍」したい場合は、次のようにします。
InputStream in = MyClass.class.getClassLoader().getResourceAsStream(name);
byte[] buffer = new byte[1024];
int read = -1;
File temp2 = new File(new File(System.getProperty("user.dir")), name);
FileOutputStream fos2 = new FileOutputStream(temp2);
while((read = in.read(buffer)) != -1) {
fos2.write(buffer, 0, read);
}
fos2.close();
in.close();
同じディレクトリに別の JAR ファイルがある場合はどうなりますか? 同様の方法で 2 番目の JAR ファイル リソースにアクセスできますか? この 2 番目の JAR は実行されないため、独自のクラス ローダーはありません。この 2 番目の JAR ファイルを解凍する唯一の方法はありますか?