I'm trying to read a file from inside an external jar using java.. For example, I have two jar files. One is "foo.jar" the other is "bar.jar". Inside of "bar.jar" is the file "foo-bar.txt". How do i read the file "foo-bar.txt" from inside of "bar.jar" using code in "foo.jar"...? Is this even possible..? I know that i can read a file from iside of foo.jar using
this.getClass().getClassLoader().getResourceAsStream("foo-bar.txt");
But I don't know how to do it from an external jar.. can someone help me?
Use jar url to open connection the example code
If the jar is in your classpath then
getResourceAsStream
will work, but note that it will find the first instance in your classpath. If foo.jar and bar.jar both contain this file then it will return whichever jar is first in classpath.To read it from the jar use
JarFile.getEntry
andJarFile.getInputStream