我的设置如下:
- outer.jar
- inner.jar
- file.txt
- inner.jar
因此,我正在执行outer.jar,在其中的主类中:
URL url = Main.class.getClassLoader().getResource("file.txt");
URL为:'jar:file:outer.jar!/inner.jar!/file.txt'
但是如果我尝试这样读取它:
url.openStream()
我遇到了一个异常。
Exception in thread "main" java.io.FileNotFoundException: JAR entry inner.jar!/file.txt not found in outer.jar
at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:142)
at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:150)
at java.net.URL.openStream(URL.java:1038)
at Main.main(Main.java:15)
文件肯定在那里。使用JarURLConnection不能实现这个吗?