如何从嵌套jar中的类获取InputStream?

时间:2016-12-29 18:05:11

标签: java classpath

我正在使用Spring启动jar,我的结构中有嵌套的jar。 我试图从类文件中读取原始字节。我想从以下URL

获取InputStream

&#34;罐:文件:/ d:!/work/dev/target/first.jar /BOOT-INF/lib/second.jar /a/b/c/Data.class" < / p>

我试过了

InputStream i = new URL( str ).openStream();

但这不起作用(FileNotFoundException)。 我不想使用spring-boot的API。由于该URL看起来非常标准,我希望应该有办法实现这一目标。

1 个答案:

答案 0 :(得分:1)

类路径中是“second.jar”吗?

如果是,请使用Classloader.getResourceAsStream()

例如:

Thread.currentThread().getContextClassLoader().getResourceAsStream("a/b/c/Data.class")