org.springframework.boot.builder.SpringApplicationBuilder.<init>

在将SpringBoot从1.5.9升级至2.2.2过程中,遇到java.lang.NoSuchMethodError错误。文章详细介绍了如何通过调整pom.xml中的依赖管理来解决此问题,并提供了SpringBoot与SpringCloud版本兼容性的匹配指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在升级Spring Boot版本的时候,报以下错误:

java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;)V
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:125)
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:89)
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:62)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
	at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:76)
	at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
	at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)
	at com.esscard.pay.channel.ChannelPortalApplication.main(ChannelApplication.java:17)

项目中Spring Boot的版本是1.5.9升级到2.2.2,报错第一行java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;),由此想到应该是有什么jar包冲突。查看文档是由于Spring Boot和Spring Cloud版本兼容性导致的。


解决方法
在pom.xml添加如下配置

<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>

修改前
在这里插入图片描述
修改后
在这里插入图片描述

给大家一个Spring Boot版本和Spring Cloud版本的匹配关系:
Spring官方对应关系

大版本号对应关系:

Spring BootSpring Cloud关系
1.2.xAngel兼容Spring Boot 1.2.x
1.3.xBrixton兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x
1.4.xCamden兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x
1.5.xDalston兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x
1.5.xEdgware兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x
2.0.xFinchley兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x
2.1.xGreenwich 兼容Spring Boot 2.1.x
2.2.xHoxton 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值