【问题标题】:How to list all files from the resources directory [duplicate]如何列出资源目录中的所有文件[重复]
【发布时间】:2016-07-05 18:06:37
【问题描述】:

Source 是一个 Java Maven 项目。

Java resources 目录包含包含配置文件的子目录。配置文件可以作为维护过程添加和删除。文件的名称不应该是已知的。

如何获取提到的项目“资源”目录中所有文件的列表?

有一个使用 Spring 框架类 PathMatchingResourcePatternResolver 的解决方案,但是这个类需要 Apache Commons Logging,并且当添加依赖项时,项目会从 1.8 设置为 java 1.7 源代码,这会破坏现有代码的兼容性。

java 是否有一个类可以列出提到的文件夹的文件,或者 java 从来不需要它?

更新: 能够使用此解决方案解决问题(其他条件//使用 IDE 运行) https://stackoverflow.com/a/20073154/323128

path 是“资源”目录中的文件夹名称。

【问题讨论】:

  • @Burkhard 与提到的问题不重复。
  • 感谢无知的社区成员在没有帮助的情况下关闭!如果您花时间阅读问题,至少可以通过正确的链接提供帮助。

标签: java


【解决方案1】:

您可以使用 JarFile 类以编程方式询问 JAR 的内容:https://docs.oracle.com/javase/7/docs/api/java/util/jar/JarFile.html

一些例子:http://www.programcreek.com/java-api-examples/java.util.jar.JarFile

您还可以使用 JDK 本身的 jar.exe 来查询 JAR 文件。此命令将从根目录显示资源级别下的所有内容...

jar tf YourApplication.jar resources

Guava ClassPath 类也可能值得一看:(https://github.com/google/guava/blob/master/guava/src/com/google/common/reflect/ClassPath.java)。

【讨论】:

  • Jar 的资源目录。谢谢你的链接。
  • 更新了我的答案,通过 jar.exe 提供了另一种方法。
  • 您的提示将我带到了这个答案stackoverflow.com/questions/11012819/…,它解决了我的问题。感谢您的帮助,我将其作为答案。
猜你喜欢
  • 2011-04-19
  • 2017-05-01
  • 2018-06-08
  • 2013-03-24
  • 2011-03-13
相关资源
最近更新 更多