Java class.getResource() 返回 null

标签 java intellij-idea resources getresource

我尝试使用 IntelliJ 中标记为“资源根”的资源目录中的文件,但下面的代码无法找到该文件。

你能告诉我出了什么问题吗?谢谢。

Project hierarchy

public class ResourceTest {
    public void testResource() {
        URL url = this.getClass().getResource("resources/table.1gram");
    System.out.println(url);
}
public static void main(String[] args) {
    ResourceTest rt = new ResourceTest();
    rt.testResource();
}

}

最佳答案

resources文件夹中的文件将被打包到.jar文件的根目录下,这意味着在开发过程中,resources文件夹本身位于类路径中,因此您需要 this.getClass().getResource("/table.1gram"),或者没有 / 因为你的类位于未命名的包中,也位于.jar 文件。

关于Java class.getResource() 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34076221/

相关文章:

java - Eclipse 将焦点切换到运行时的控制台

git - IntelliJ - Git 未安装 : Cannot identify version of git executable: no response

android - 在 android studio 中更改 gradle 构建目录?

spring-boot - 为什么我需要在构建之前手动运行清理?

scala - 运行SBT runTask时如何访问资源?

java - 错误: android. widget.LinearLayout 无法转换为 android.widget.ImageView

java - POJO 是反面向对象(OO)的吗?

java - 如果测试未完成则运行方法

java - Intellij Spring Boot 2 application.properties

android - 您必须为 TextView android 错误提供资源 ID