本文主要是介绍spring报错:java.lang.IllegalStateException: Failed to load ApplicationContext,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、问题描述
Spring项目,开发单元测试的时候莫名报错:
java.lang.IllegalStateException: Failed to load ApplicationContextat org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83)at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary
二、问题原因:
查阅很多资料,发现这个提示只是一个总括,具体问题需要看更加详细的报错,主要观察caused by后面的内容,是根本原因。
Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'ApiController' method
public java.util.List<com.db.api.entity.UploadFile> com.db.api.controller.PgsqlApiController.getFilesInFolder(java.lang.String)
to {[/db/search]}: There is already 'ApiController' bean method
查看到Caused by之后,发现根本原因是controller里面的两个方法的注解@RequestMapping(value = "/search")是重复的路径。这个copy出bug了,很尴尬~
三、解决问题
查到问题原因就很容易解决了,把第二个方法的@RequestMapping中的路径修改为对应路径即可。
四、总结
查看问题要追本溯源,再报错Failed to load ApplicationContext,则主要查找下面的Caused by查看根本报错原因。
五、参考
1.https://blog.csdn.net/qq_41247433/article/details/79330275
这篇关于spring报错:java.lang.IllegalStateException: Failed to load ApplicationContext的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!