2017-03-03 29 views
20

Gần đây tôi đã tạo một dự án mới bằng cách sử dụng IntelliJ IDEA và Gradle để quản lý phụ thuộc. Sau khi giải quyết tất cả các phụ thuộc cần thiết cho dự án và chạy nó tôi nhận được lỗi sau:NoClassDefFoundError sau khi IntelliJ IDEA nâng cấp

java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication 
    at com.some.fancy.name.Application.main(Application.java:13) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147) 
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 6 more 

Vấn đề chỉ xảy ra với các lớp học từ sự phụ thuộc được giải quyết (Tôi đã thử nó cũng có một chương trình đơn giản main sử dụng Cache từ Ổi). Lớp gây ra lỗi là những điều sau đây:

@SpringBootApplication 
public class Application { 
    public static void main(String... args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

Tất cả các lĩnh vực được hiển thị màu sắc chính xác (chú thích có màu vàng, không có gì là màu đỏ), IntelliJ có tất cả các phụ thuộc được giải quyết trong thư mục External Libraries. Tôi đang sử dụng mũi tên "chạy" màu lục để bắt đầu dự án.

Khi sử dụng gradle từ dòng lệnh, tạo một lọ chất béo thì mọi thứ hoạt động tốt. Tôi đã thử "Invalidate Caches/Restart", kéo dự án vài lần từ kho lưu trữ, xóa bộ đệm gradle, loại bỏ tất cả các phụ thuộc bằng tay, cố gắng chạy nó bằng Community Edition, Ultimate Edition, chạy các dự án cũ đã làm việc một số thời gian trước đây (và không làm việc bây giờ).

Có thể nào đó liên quan đến việc cập nhật IntelliJ IDEA thành 2016.3.4, xây dựng 163.12024.16?

Trả lời

28

Đó là một vấn đề được biết đến trong IntelliJ IDEA mà là cụ thể cho Gradle 3.4 và các phiên bản sau:

Đã là f ixed in IntelliJ IDEA 2017.12016.3.6.

Bạn cũng có thể sử dụng Gradle 3.3 hoặc cũ hơn để giải quyết sự cố nếu bạn không thể hoặc không muốn cập nhật IntelliJ IDEA.

+1

Chỉ cần lưu ý trong trường hợp người khác gặp phải vấn đề tương tự. Điều này không cụ thể đối với Gradle 3.4 vì vấn đề vẫn xảy ra với 3.5. Việc sửa chữa không hoạt động mặc dù (cập nhật IntelliJ) để giải pháp là viết tắt. –

+1

Tôi đang đối mặt với cùng một vấn đề. Trong trường hợp của tôi, tôi có thể chạy nó khi biên dịch nó với IntelliJ/Maven và chạy nó qua terminal (java -jar myapp.jar). Nhưng khi tôi cố gắng chạy nó từ menu IntelliJ, nó đi đến lỗi này. Ngoài ra, nếu tôi chạy nó với Eclipse, mọi thứ đều chạy tốt. Rất lạ! IDEA là rất không ổn định! Đây là kết luận của tôi sau khi sử dụng nó hơn 2 năm, không may. –

+0

Cùng một vấn đề một lần nữa với 2017.3 :( –

0

Đặt phiên bản gradle thành 3.3 đã khắc phục sự cố này.

Các vấn đề liên quan