Java 从类路径项获取文件列表
我在应用程序中遇到了一个问题,无法列出类路径条目中的所有资源Java 从类路径项获取文件列表,java,classpath,Java,Classpath,我在应用程序中遇到了一个问题,无法列出类路径条目中的所有资源 Enumeration<URL> resources = Thread.currentThread().getContextClassLoader().getResources("src/main/resources/*.*"); System.out.println(resources); while (resources.hasMoreElements()) { URL url = resources.nextEl
Enumeration<URL> resources = Thread.currentThread().getContextClassLoader().getResources("src/main/resources/*.*");
System.out.println(resources);
while (resources.hasMoreElements()) {
URL url = resources.nextElement();
//Here I am getting an empty URL list.Please help.
System.out.println(url);
}
我认为这些被读取的资源应该放在“META-INF”文件夹中: src/main/java/META-INF 然后,您可以阅读如下内容,最好比我更具体地指定您的文件类型: ClassLoader cl=this.getClass.getClassLoader; 枚举资源=cl.getResourcesMETA-INF; 而resources.hasMoreElements{ URL=resources.nextElement; System.out.printlnurl;
}有两个问题: src/main/resources/*.*不是ClassLoader.getResources的有效语法 路径必须是完整路径,例如src/main/resources 为什么要尝试从src/main/resources目录加载类? 它假定资源位于这样的目录中,但这仅适用于开发目的 编译后,资源将存储在不同的目录中。默认情况下,Maven会将其放在顶级目录中,而您的程序将无法正常工作
嗯,你确定可以从运行代码的地方访问src文件夹吗?用绝对路径试试看我的类路径条目不回答问题。