从类自己的JAR文件加载资源

当使用Class.getResource()并提供相当常见的资源名称(如"license.html" ,Java可能会从CLASSPATH中先前列出的另一个JAR文件加载"license.html"资源,但可能与之完全无关。我的应用程序。 有没有办法强制ClassLoader 首先尝试从我的类所在的同一个JAR文件加载资源,并且只有在找不到时,查看CLASSPATH上的其他JAR?

或者,如果您知道文件所在的jar,则可以使用JarURLConnection :

 jar:!/{entry} 

..common资源名称,例如“license.html”’

给它一个不常见的路径的一个很好的理由,例如根据package名称。
EG "/com/our/app/license.html"不太可能与任何其他license.html发生冲突