java - 访问 JAR 中的资源

标签 java jar embedded-resource

我正在创建一个使用 Maven 配置文件和 JAR 构建的 Java 应用程序。

我在此文件夹中有一些 XML 文件:project/src/main/resources/XML/*.xml

src/main/resources 文件夹是我的构建路径中的源文件夹,因此我在 JAR 二进制文件中构建了我的 project.jar/XML/*.xml。

我希望能够在 JAR 执行中找到并列出这些文件“/XML/*.xml”。我的结构适合这个吗?

我使用 Maven 配置文件运行没有问题,我只是找不到查找和列出这些文件的好方法。

最佳答案

确实没有好的方法。如果您不介意对 spring-core 的依赖,那么他们有一个不错的 PathMatchingResourcePatternResolver抽象了 JAR 和目录之间的差异。

PathMatchingResourcePatternResolver resolver =
   new PathMatchingResourcePatternResolver(MyClass.class.getClassLoader());
Resource[] xmls = resolver.getResources("classpath*:XML/*.xml");

关于java - 访问 JAR 中的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13816501/

相关文章:

java - 在随机方法中测试特定数字时,我得到的结果好坏参半

java - jar 中的 System.out.println

java - 在命令行上运行时,使用 getResourceAsStream() 列出文件为空

html - 电子邮件客户端支持 HTML 电子邮件中的 PNG 图像

java - 限制按钮点击次数

java - 从文本中提取协议(protocol)特征

java - 编写依赖于 gems 和 Maven 项目的 JRuby 代码

java - 运行 JAR 文件时出错

javascript - 即使使用 document.getElementById ('xyz' ).playVideo() 也无法控制 Youtube 嵌入 - 不是函数?

java - 池化或不池化 java 加密服务提供者