getResource() 使用 Gradle 项目返回 null
我知道还有其他几个关于这个问题...
但我的问题似乎有点不同,因为我似乎拥有所有必要的东西来避免这个问题。
代码:
this.getClass().getResource("checkstyle_whitespace.xml"); // null
问题是我通过检查调试器中的类装入器来验证我的类路径。以下是我所看到的:
27 = {URL@1235} "file:/Users/dennis/Documents/Development/java/java-grader/build/classes/main/"
28 = {URL@1236} "file:/Users/dennis/Documents/Development/java/java-grader/build/resources/main/"
Blow是我的目录结构的一个快速。请参见和。当 gradle 构建我的项目时,将复制这些文件。tree
build/resources
src/main/resources
├── build
│ ├── classes
│ │ ├── main
│ │ │ └── javaGrader
│ │ └── test
│ │ └── javaGraderTest
│ └── resources
│ └── main
│ ├── checkstyle_whitespace.xml
│ └── grammars
├── src
│ ├── main
│ │ ├── java
│ │ │ └── javaGrader
│ │ └── resources
│ │ ├── checkstyle_whitespace.xml
│ │ └── grammars
│ └── test
│ ├── java
│ │ └── javaGraderTest
│ └── resources
│ └── mini_test
├── target
│ ├── classes
│ ├── generated-sources
│ │ └── annotations
│ └── generated-test-sources
│ └── test-annotations
└── test_assets
据我所知,这些文件应该是可访问的,因为它们位于 .如果我错了,请纠正我...build