Tôi biết có một số câu hỏi khác về vấn đề này ...getResource() được trở về null với dự án Gradle
Nhưng vấn đề của tôi có vẻ hơi khác một chút vì tôi dường như có tất cả những thứ cần thiết để KHÔNG có vấn đề này.
Mã:
this.getClass().getResource("checkstyle_whitespace.xml"); // null
Vấn đề là tôi đã xác minh classpath của tôi bằng cách kiểm tra các bộ nạp lớp trong trình gỡ lỗi. Dưới đây là những gì tôi thấy:
27 = {[email protected]} "file:/Users/dennis/Documents/Development/java/java-grader/build/classes/main/"
28 = {[email protected]} "file:/Users/dennis/Documents/Development/java/java-grader/build/resources/main/"
Thổi nhanh chóng là tree
cấu trúc thư mục của tôi. Xem build/resources
và src/main/resources
. Các tập tin đang được sao chép khi gradle xây dựng dự án của tôi.
├── 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
Từ những gì tôi hiểu, các tệp sẽ có thể truy cập được vì chúng ở build
. Sửa tôi nếu tôi sai ...
Sơn của một khẩu súng, phụ thêm 'getClassLoader() 'công trình – djthoms