2016-03-18 88 views
2

Source是一个Java Maven项目。如何列出资源目录中的所有文件

Java 资源目录包含包含配置文件的子目录。作为维护过程,可以添加和删除配置文件。不知道文件的名称。

我如何才能得到所提到的项目“资源”目录中的所有文件的列表?

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

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

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

路径是一个文件夹名称中的“资源”目录。

+0

@Burkhard与引用的问题不重复。 – Maxim

+1

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

回答

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

您还可以使用jar.exe的从JDK本身询问JAR文件。此命令会显示下从根本上资源水平一切......

jar tf YourApplication.jar resources 

番石榴类路径类也可能是值得考虑的:(https://github.com/google/guava/blob/master/guava/src/com/google/common/reflect/ClassPath.java)。

+0

Jar的资源目录。感谢您的链接。 – Maxim

+0

更新了我的答案,提供了通过jar.exe执行此操作的其他方法。 – ManoDestra

+0

你的提示把我带到这个答案http://stackoverflow.com/questions/11012819/how-can-i-get-a-resource-folder-from-inside-my-jar-file解决了我的问题。感谢您的帮助,我将其作为答案。 – Maxim

相关问题