Spring Boot启动报HandlerMethod类路径冲突错误该如何解决?
问题根因
该错误为Spring框架版本冲突导致。spring-boot-starter-web启动器已经内置了和当前Spring Boot版本适配的spring-web依赖,你手动在pom.xml中指定了独立的spring-web 5.3.6版本,破坏了Spring Boot的依赖版本仲裁机制,使得不同Spring模块的版本不匹配,最终出现HandlerMethod构造方法签名和调用方预期不一致的错误。
解决步骤
- 删除pom.xml中手动添加的
spring-web依赖,对应删除内容如下:
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.3.6</version> </dependency>
- 执行
mvn clean命令清理本地项目的历史编译缓存 - 重新启动Spring Boot应用即可正常运行,启动后访问本地8080端口即可看到对应的首页内容
如果清理后仍然存在依赖冲突,可以检查本地Maven仓库是否存在损坏的依赖包,或者在pom.xml的properties节点中统一指定Spring框架的版本号,保证所有Spring核心模块版本完全一致。
内容的提问来源于stack exchange,提问作者Paris
相关产品推荐
相关产品推荐

