我在运行服务器时遇到异常。我知道它是Spring boot
和spring-cloud
的版本问题。但我正在使用spring boot 1.4.2.RELEASE
和目前使用spring cloud
的Finchley.SR1
。
什么是春季启动弹簧云的合适版本1.4.2.RELEASE?
获得以下例外:
Exception in thread "main" java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Class;)V
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:170)
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:104)
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:70)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121)
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:68)
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:337)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175)
at com.sarathi5.Sarathi5TestCase2Application.main(Sarathi5TestCase2Application.java:14)
pom.hml:
<?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>com.example</groupId>
<artifactId>TestCase2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>TestCase2</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.2.RELEASE</version>
<!-- <version>2.0.1.RELEASE</version> -->
<relativePath/><!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<drools.version>6.2.0.Final</drools.version><!--7.6.0.Final -->
<!--<spring-cloud.version></spring-cloud.version> -->
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependencies>
<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>
</project>
请帮帮我解决这个问题?
Edgware.SR5是应该兼容的最新版本。
问题解决了。我更新spring boot
依赖版1.4.2.RELEASE
到1.5.19.RELEASE
。和它的支持spring-cloud dependency management Edgware.SR5
。
版本相关明确信息提供链接:
Spring Cloud Edgware发行说明:https://github.com/spring-projects/spring-cloud/wiki/Spring-Cloud-Edgware-Release-Notes
Spring Cloud Camden发行说明:https://github.com/spring-projects/spring-cloud/wiki/Spring-Cloud-Camden-Release-Notes
Spring Cloud Finchley发行说明:https://github.com/spring-projects/spring-cloud/wiki/spring-cloud-finchley-release-notes
版本更新,spring boot:1.5.19-RELEASE和spring cloud:Edgware.SR5
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<!-- <version>1.4.2.RELEASE</version> -->
<version>1.5.19.RELEASE</version>
<!-- <version>2.0.1.RELEASE</version> -->
<relativePath/><!-- lookup parent from repository -->
</parent>
更新依赖:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Edgware.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
更新这两个依赖项后,只需更新maven项目(右键单击project-> maven-> update)和mvn clean install。
问题解决了。