Java class.getResource() returns 空

Java class.getResource() returns null

我正在尝试使用在 IntelliJ 中标记为 "resource root" 的资源目录中的文件,但以下代码无法找到该文件。

你能告诉我哪里出了问题吗?谢谢。

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文件夹本身就在class路径下,所以你需要 this.getClass().getResource("/table.1gram"),或者不需要 /,因为你的 class 在未命名的包中,也就是在 .jar 文件的根目录中。