当前位置: 首页 > 面试题库 >

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

赵明亮
2023-03-14
问题内容

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


问题答案:

另外,如果您知道文件所在的确切jar,则可以使用JarURLConnection:

jar:<url>!/{entry}


 类似资料:
  • 我在maven项目的src/main/resource文件夹中下载了.sh文件,我正在通过下面的代码阅读它 如果我使用jar EX作为应用程序运行:- java-jar runscript.jar SCHEMA_NAME /users/ideaprojects/runscript/target/file:/users/ideaprojects/runscript/target/runscripts

  • 在使用Maven捆绑JAR文件中的资源时,我有一种感觉,我错过了一些关键的东西。我的目录结构是标准的Maven结构(即\src\main\java,\src\main\Resources)。 使用IDE时,我将资源文件引用为\main\resources\images\blah。。。它工作得很好,但当Maven捆绑JAR文件时,它会将路径放在相对于根的位置(“\ images\blah”),因此没

  • 我有一个SpringWeb应用程序,它是作为maven工件a.war创建的。它有一个maven依赖项和一个工件B.jar。工件B的src/main/resources有一个文件测试。txt。我想读一下测试文件。来自神器A.war的txt。当我引爆B.jar时,我看到了测试结果。jar的根位于txt中。在A中,我尝试使用文件f=new ClassPathResource(“test.txt”)读取该

  • 我正在尝试将资源csv文件传递到我的Sprint Boot应用程序使用的jar中。尽管方法获取的资源参数=ReactiveWebContext资源[src/main/Resources/file.csv],但我总是得到该文件不存在的响应 > 在我的项目中,文件位于src/main/resources/file中。csv 正在应用中。属性,我定义: 在config类中: 在内部jar:Config类

  • 我试图显示包含从资源加载的帮助的chm文件: 从NetBeans运行项目时,帮助文件将正确显示。不幸的是,当程序从jar文件运行时,它不起作用;它会导致异常。 在我看来,URI描述的jar的内部结构还没有被认识到。。。还有更好的办法吗?例如,使用BufferReader类? BuffereImage类修复了jpg文件的类似问题 没有任何转换到URI。。。 谢谢你的帮助...

  • 问题内容: 我需要从罐子中加载属性文件。该罐子包含在war文件中。这是结构 现在,我在一个servlet中编写了以下代码,如下所示: 但是上面的代码我得到流为空。如果我将属性文件放在ROOT.war / WEB- INF中,则可以正常工作。我有一个不错的主意,如果getResourceAsStream中的路径以“ /”开头,那么它将在上下文根目录中搜索资源。但是,如何读取位于jar的资源,该jar