URL to load resources from the classpath in Java
Posted
by Thilo
on Stack Overflow
See other posts from Stack Overflow
or by Thilo
Published on 2009-05-14T04:07:39Z
Indexed on
2010/03/22
0:11 UTC
Read the original article
Hit count: 702
In Java, you can load all kinds of resources using the same API but with different URL protocols:
file:///tmp.txt
http://127.0.0.1:8080/a.properties
jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class
This nicely decouples the actual loading of the resource from the application that needs the resource, and since a URL is just a String, resource loading is also very easily configurable.
Is there a protocol to load resources using the current classloader? This is similar to the Jar protocol, except that I do not need to know which jar file or class folder the resource is coming from.
I can do that using Class.getResourceAsStream("a.xml")
, of course, but that would require me to use a different API, and hence changes to existing code. I want to be able to use this in all places where I can specify a URL for the resource already, by just updating a property file.
© Stack Overflow or respective owner