我正在尝试检索类路径中的文件列表,但Spring返回的是FileSystemResources的Resource []而不是ClassPathResources。这是代码的样子:
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
Resource [] resources = resolver.getResources("classpath*:my/package/**/*.xml");
我也试过这个:
context.getResources("classpath*:my/package/**/*.xml");
返回的数组是一堆绝对路径file:// URL,当我真正想要的是classpath:URL。我究竟做错了什么?
这是我最终要构建的内容:
/my/package/one.xml
/my/package/two.xml
相反,我得到了这个:
file:/C:/eclipse/.../my/package/one.xml
答案 0 :(得分:0)
FileSystemResource和ClassPathResource都返回绝对资源路径。 FileSystemResource在文件系统C:/eclipse/.../my/package/one.xml
中查找它。 ClassPathResource在/WEB-INF/classes
内的类路径文件中查找资源。我不明白为什么你需要返回classpath:path
,但你仍然可以通过子串你的绝对路径来获得它。