NoClassDefFoundErrors when Gradle Configuration Cache is enabled
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- java
- Lĩnh vực
- build-system, tooling
Hướng nghiên cứu
Tải xuống và chạy bản tái hiện tối thiểu đính kèm, sau đó lặp lại các build configuration-cache như ./gradlew clean build để tái hiện lỗi không liên tục. Theo dõi việc tải các lớp formatter của Spotless Gradle Plugin qua các clean build đa mô-đun, bao gồm googleJavaFormat và eclipse(), đồng thời xác minh rằng các lần chạy lặp lại hoàn tất mà không có NoClassDefFoundError.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
When the Gradle Configuration Cache is enabled, I see intermittent java.lang.NoClassDefFoundError for googleJavaFormat classes for tasks like removeUnusedImports(), or org.eclipse.jdt classes when using the eclipse() formatter.
Spotless Gradle Plugin: 8.2.1
Gradle Wrapper: 9.3.0
Java: observed on 21 and 25
In my observations, I have only seen issues when the project has multiple modules, and only when running a command including clean. ./gradlew clean and ./gradlew build work in isolation, but when running ./gradlew clean build for instance, it results in an error similar to below when running it multiple times in a row.
Execution failed for task ':server:spotlessJavaCheck'.
> There were 1 lint error(s), they must be fixed or suppressed.
src/main/java/com/test/Main.java:LINE_UNDEFINED removeUnusedImports(java.lang.NoClassDefFoundError) com/google/googlejavaformat/java/RemoveUnusedImports (...)
Resolve these lints or suppress with `suppressLintsFor`
I've attached a minimal reproduction zip:
spotless-cache-repro-master.zip
- Ngôn ngữ chính
- Java
- Star
- 5.7k
- Fork
- 560
- Merge trung bình
- 1 ngày 13 giờ
- Pull request đã merge (30 ngày)
- 43
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của diffplug/spotless
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 66/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
Tất cả issue của diffplug/spotless
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
infinispan/infinispan#18150 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
untriaged
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
opensearch-project/k-NN#3597 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100