java.lang.ClassNotFoundException: com.netflix.discovery.DiscoveryClient$DiscoveryClientOptionalArgs


java.lang.ClassNotFoundException: com.netflix.discovery.DiscoveryClient$DiscoveryClientOptionalArgs

報錯內容:

Caused by: java.lang.NoClassDefFoundError: com/netflix/discovery/DiscoveryClient$DiscoveryClientOptionalArgs
	at java.base/java.lang.ClassLoader.defineClass1(Native Method) ~[na:na]
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016) ~[na:na]
	at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151) ......
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na]
	at java.base/java.lang.Class.getDeclaredMethods0(Native Method) ~[na:na]
	at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3171) ~[na:na]
	at java.base/java.lang.Class.getDeclaredMethods(Class.java:2314) ~[na:na]
	at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:463) ~[spring-core-5.2.2.RELEASE.jar:5.2.2.RELEASE]
	... 21 common frames omitted

報錯截圖:

報錯原因以及解決方案:

我的原因很愚蠢, 引依賴不小心將Eureka-Client 引成了Eureka-Server,將依賴重新引入即可:

<!-- eureka客戶端 -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    <version>2.2.3.RELEASE</version>
</dependency>

注意, 不是

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

二者一個是用來做服務端(注冊中心), 一個是用來做客戶端(提供服務)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM