Trong Spring Starter đã tạo ứng dụng Soring Boot, tôi đã chuyển từ Spring Boot 1.3.0M1 thành 1.3.0M2. Khi cố gắng để khởi động ứng dụng (hoặc từ STS 3.7.0 hoặc qua lò xo khởi động: chạy tại dòng lệnh) tôi nhận được ngoại lệ sau đây:"NoClassDefFoundError: GenericApplicationListener" khi chuyển từ Spring Boot 1.3.0M1 sang 1.3.0M2
java.lang.reflect.InvocationTargetException
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:497)
at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:435)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: Cannot instantiate interface org.springframework.context.ApplicationListener : org.springframework.boot.logging.ClasspathLoggingApplicationListener
at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:385)
at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:362)
at org.springframework.boot.SpringApplication.initialize(SpringApplication.java:231)
at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:206)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:971)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:960)
at com.daimler.daivb.services.application.dummyservice.DummyServiceApplication.main(DummyServiceApplication.java:18)
... 6 more
Caused by: java.lang.NoClassDefFoundError: org/springframework/context/event/GenericApplicationListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.springframework.util.ClassUtils.forName(ClassUtils.java:250)
at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:378)
... 12 more
Caused by: java.lang.ClassNotFoundException: org.springframework.context.event.GenericApplicationListener
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 25 more
Lớp nêu đã được thêm vào trong phiên bản mùa xuân-bối cảnh 4.2 .0 nhưng khi nhìn vào cây phụ thuộc tôi có thể thấy rằng mùa xuân Boot 1.3.0M2 vẫn phụ thuộc vào mùa xuân-bối cảnh 4.1.6:
[INFO] com.company.services.application:dummyservice:war:0.0.1-SNAPSHOT
[INFO] +- org.springframework.boot:spring-boot-devtools:jar:1.3.0.M2:compile
[INFO] | +- org.springframework.boot:spring-boot:jar:1.3.0.M2:compile
[INFO] | | \- org.springframework:spring-context:jar:4.1.6.RELEASE:compile
[INFO] | \- org.springframework.boot:spring-boot-autoconfigure:jar:1.3.0.M2:compile
[INFO] | \- org.yaml:snakeyaml:jar:1.15:compile
Cố gắng thêm phụ thuộc vào ngữ cảnh mùa xuân 4.2.0.RC3 một cách rõ ràng, bằng cách loại trừ phụ thuộc transitive 4.1.6, dẫn đến lỗi sau: 'Gây ra bởi: java.lang.NoSuchMethodError: org.springframework.beans. factory.config.ConfigurableBeanFactory.getSingletonMutex() Ljava/lang/Object; ' – mrumpf
Spring Boot 4.1 nên sử dụng Spring 4.2 đảm bảo bạn không chỉ định thuộc tính' spring.version' trong pom của bạn hoặc có một số phụ thuộc khác đang buộc Phiên bản 4.1.6. –
Tôi chạy vào cùng một điều. Tôi đã cập nhật ứng dụng đám mây mùa xuân của mình để sử dụng phiên bản khởi động mùa xuân 1.3.0.M5 và dường như có rất nhiều phụ thuộc vào khung công tác mùa xuân 4.1.6. Trong cây phụ thuộc, tôi chú ý một số là 4.2.1 nhưng phần lớn vẫn là 4.1.6. Tôi không có một 4.1.6 spring.version rõ ràng bất cứ nơi nào – EvilJinious1