java.lang.ClassNotFoundException:com.netflix.discovery.EurekaClientConfig
我正在使用SpringCloudEureka并使用SpringInitializer()创建项目。生成的POM用户Eureka Finchley.RC2,使用Spring Boot 2.0.2.RELEASE。当我在主类中添加注释java.lang.ClassNotFoundException:com.netflix.discovery.EurekaClientConfig,java,spring,cloud,netflix-eureka,Java,Spring,Cloud,Netflix Eureka,我正在使用SpringCloudEureka并使用SpringInitializer()创建项目。生成的POM用户Eureka Finchley.RC2,使用Spring Boot 2.0.2.RELEASE。当我在主类中添加注释@EnableEurekaServer时,也就是用@SpringBootApplication注释的注释,我使用以下命令启动服务器: mvn spring-boot:run 我收到了例外 java.lang.ClassNotFoundException: com.ne
@EnableEurekaServer
时,也就是用@SpringBootApplication
注释的注释,我使用以下命令启动服务器:
mvn spring-boot:run
我收到了例外
java.lang.ClassNotFoundException: com.netflix.discovery.EurekaClientConfig
以下是初始化器生成的pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>it.javaboss</groupId>
<artifactId>api-gateway</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>api-gateway</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.RC2</spring-cloud.version>
</properties>
<dependencies>
<!-- <dependency> -->
<!-- <groupId>org.springframework.cloud</groupId> -->
<!-- <artifactId>spring-cloud-starter-config</artifactId> -->
<!-- </dependency> -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
4.0.0
it.javaboss
api网关
0.0.1-快照
罐子
api网关
SpringBoot的演示项目
org.springframework.boot
spring启动程序父级
2.0.2.1发布
UTF-8
UTF-8
1.8
Finchley.RC2
org.springframework.cloud
spring cloud starter netflix eureka服务器
org.springframework.cloud
spring云依赖关系
${spring cloud.version}
聚甲醛
进口
org.springframework.boot
springbootmaven插件
春季里程碑
春季里程碑
https://repo.spring.io/milestone
假的
确保
com.netflix.discovery.EurekaClientConfig
。因此,组织您的导入一次我最终用两种不同的解决方案解决了这个问题: 1.添加另外两个依赖项:
<dependency>
<groupId>com.netflix.eureka</groupId>
<artifactId>eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.3.5</version>
</dependency>
但在第二种方式中,我仍然需要添加要抛弃的依赖项:
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.3.5</version>
</dependency>
org.codehaus.jettison
抛弃
1.3.5
我在本地maven存储库中发现eureka-clien-1.9.2.jar是零长度文件,所以我删除了它并重新下载依赖项,一切正常 希望能帮助别人-我在启动eureka服务器时遇到了相同的问题java.lang.NoClassDefFoundError:com/netflix/discovery/converters/XmlXStream,我使用的版本是springboot 2.0.3.RELEASE和spring-cloud.version Finchley.RELEASE。我通过重命名我的本地maven repo用户文件夹解决了这个问题。m2\repository,fresh加载一个新的本地maven repo。尝试在pom.xml中使用以下依赖项
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.RELEASE</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<finalName>eureka-server</finalName>
</build>
org.springframework.boot
spring启动程序父级
2.0.3.1发布
UTF-8
UTF-8
1.8
芬奇利,释放
org.springframework.cloud
spring cloud starter netflix eureka服务器
org.springframework.boot
弹簧起动试验
测试
org.springframework.cloud
spring云依赖关系
${spring cloud.version}
聚甲醛
进口
org.springframework.boot
springbootmaven插件
尤里卡服务器
正如“rosa lu”所说,在启动eureka服务器时,我遇到了如下类似问题:
java.lang.NoClassDefFoundError:com/netflix/discovery/converters/XmlXStreamSpringBoot=2.0.5.发布
SpringCloud.version=Finchley.SR1
正如“rosa lu”所说,我将本地maven存储库更改为新路径,并重建项目,然后解决问题
我希望我的回答能帮助任何有同样问题的人。只要检查GC(),这个类就存在于
eureka客户端中。您需要检查它是否存在于依赖关系层次结构中。我只选择了Eurika服务器e Spring云配置。甚至从application.properties中禁用客户端方面,我也有同样的问题。@user2834179您尝试过第三个吗?是编译错误吗?谢谢,我添加了依赖项eureka客户端,但现在我有一个新错误:java.lang.ClassNotFoundException:org.codehaus.jettison.mapped。Configuration@user2834179我没有指示您添加eureka客户。您可以发布相关的代码吗?您使用的是什么IDE?您不应该手动添加这些依赖项。它在没有添加eureka客户端和抛弃依赖项的情况下对我有效。但很高兴你能成功。
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.3.5</version>
</dependency>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.RELEASE</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<finalName>eureka-server</finalName>
</build>