springBoot整合Eureka启动失败如何解决
导读:本文共5823字符,通常情况下阅读需要19分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 其实springBoot 整合Eureka 是比较简单 ,可是我发现很多人整合后会启动不了,我这里列出比较常见的报错的原因报:A child container failed during start如图下这样这个原因是因为pom.xml 没有添加<dependencyManagement><dependencies><depe... ...
目录
(为您整理了一些要点),点击可以直达。其实springBoot 整合Eureka 是比较简单 ,可是我发现很多人整合后会启动不了,我这里列出比较常见的报错的原因
报:A child container failed during start
如图下这样
这个原因是因为pom.xml 没有添加
<dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Finchley.SR1</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
假如添加后依然报错:
报错原因是因为Springboot 与 SpringCloud 版本不配对
修改后就行正常运行了!最后把他们相对应的版本贴出来,可以看着相对应的springboot版本改springCloud
Spring Boot Spring Cloud
1.2.x Angel版本
1.3.x Brixton版本
1.4.x stripes Camden版本
1.5.x Dalston版本、Edgware版本
2.0.x Finchley版本
SpringCloud异常(Euruka)
Application run failed java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder
在测试Euruka作为服务注册中心的时候碰到了这个问题,错误提示如下:
"C:\ProgramFiles\Java\jdk1.8.0_161\bin\java"-XX:TieredStopAtLevel=1-........com.fangxing.springcloud.eurukaserver.EurukaServerApplication15:04:35.690[main]DEBUGorg.springframework.boot.context.logging.ClasspathLoggingApplicationListener-Applicationfailedtostartwithclasspath:.......file:/D:/Program%20Files/JetBrains/IntelliJ%20IDEA%202017.3.5/lib/idea_rt.jar]15:04:35.867[background-preinit]DEBUGorg.jboss.logging-LoggingProvider:org.jboss.logging.Log4j2LoggerProvider15:04:35.869[background-preinit]INFOorg.hibernate.validator.internal.util.Version-HV000001:HibernateValidator6.0.7.Final15:04:35.884[background-preinit]DEBUGorg.hibernate.validator.internal.engine.resolver.TraversableResolvers-Cannotfindjavax.persistence.Persistenceonclasspath.AssumingnonJPA2environment.Allpropertieswillperdefaultbetraversable.15:04:35.890[background-preinit]DEBUGorg.hibernate.validator.internal.xml.ValidationXmlParser-TryingtoloadMETA-INF/validation.xmlforXMLbasedValidatorconfiguration.15:04:35.892[background-preinit]DEBUGorg.hibernate.validator.internal.xml.ResourceLoaderHelper-TryingtoloadMETA-INF/validation.xmlviaTCCL15:04:35.893[background-preinit]DEBUGorg.hibernate.validator.internal.xml.ResourceLoaderHelper-TryingtoloadMETA-INF/validation.xmlviaHibernateValidator'sclassloader15:04:35.894[background-preinit]DEBUGorg.hibernate.validator.internal.xml.ValidationXmlParser-NoMETA-INF/validation.xmlfound.Usingannotationbasedconfigurationonly.15:04:36.086[background-preinit]DEBUGorg.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator-LoadedexpressionfactoryviaoriginalTCCL15:04:36.090[background-preinit]DEBUGorg.hibernate.validator.internal.engine.ValidatorFactoryImpl-HV000234:Usingorg.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolatorasValidatorFactory-scopedmessageinterpolator.15:04:36.090[background-preinit]DEBUGorg.hibernate.validator.internal.engine.ValidatorFactoryImpl-HV000234:Usingorg.hibernate.validator.internal.engine.resolver.TraverseAllTraversableResolverasValidatorFactory-scopedtraversableresolver.15:04:36.090[background-preinit]DEBUGorg.hibernate.validator.internal.engine.ValidatorFactoryImpl-HV000234:Usingorg.hibernate.validator.internal.util.ExecutableParameterNameProviderasValidatorFactory-scopedparameternameprovider.15:04:36.090[background-preinit]DEBUGorg.hibernate.validator.internal.engine.ValidatorFactoryImpl-HV000234:Usingorg.hibernate.validator.internal.engine.DefaultClockProviderasValidatorFactory-scopedclockprovider.15:04:36.090[background-preinit]DEBUGorg.hibernate.validator.internal.engine.ValidatorFactoryImpl-HV000234:Usingorg.hibernate.validator.internal.engine.scripting.DefaultScriptEvaluatorFactoryasValidatorFactory-scopedscriptevaluatorfactory.15:04:36.404[main]ERRORorg.springframework.boot.SpringApplication-Applicationrunfailedjava.lang.NoSuchMethodError:org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;)Vatorg.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:120)atorg.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:84)atorg.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:62)atorg.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)atorg.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)atorg.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)atorg.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)atorg.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74)atorg.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)atorg.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:351)atorg.springframework.boot.SpringApplication.run(SpringApplication.java:317)atorg.springframework.boot.SpringApplication.run(SpringApplication.java:1246)atorg.springframework.boot.SpringApplication.run(SpringApplication.java:1234)atcom.fangxing.springcloud.eurukaserver.EurukaServerApplication.main(EurukaServerApplication.java:16)Processfinishedwithexitcode1
其根本原因是依赖包的版本冲突,我的这个pom.xml文件如下:
<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="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.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.fangxing.springcloud</groupId><artifactId>euruka-server</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>euruka-server</name><description>DemoprojectforEurekaServer</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.0.RELEASE</version><relativePath/><!--lookupparentfromrepository--></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka-server</artifactId></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Camden.SR3</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></project>
这里用到的SpringBoot版本为2.0.0.0版本,我们调整一下版本,改用下面的pom.xml
<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="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.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.fangxing.springcloud</groupId><artifactId>euruka-server</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>euruka-server</name><description>DemoprojectforEurekaServer</description><!--基于Springboot--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.0.RELEASE</version><relativePath/></parent><properties><!--设置字符编码及java版本--><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><java.version>1.8</java.version></properties><dependencies><!--增加eureka-server的依赖--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka-server</artifactId></dependency><!--用于测试的,本例可省略--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><!--依赖管理,用于管理spring-cloud的依赖,其中Camden.SR3是版本号--><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Camden.SR3</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></project>
启用正常。
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
springBoot整合Eureka启动失败如何解决的详细内容,希望对您有所帮助,信息来源于网络。