解决org.springframework.context.ApplicationContextException报错的问题
org.springframework.context.ApplicationContextException
org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper的解决办法:
在pom.xml中使用低版本的spring-boot-starter
例:
使用2.1.7.RELEASE的spring-boot-starter配合2.9.2版本的swagger,完整的pom.xml如下:
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.kuang</groupId>
<artifactId>swagger-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>swagger-demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
<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.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>RELEASE</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
使用注解出现Exception in thread“main“ org.springframework.beans.factory.NoSuchBeanDefinitionExce错误,附带解决
跟着B站视频学习注解开发时,莫名报错,控制台报错如下。

附上相关代码和目录结构




百度到的解决方案大致分三四种
- 1.applicationContext.xml配置文件没有进行context扫描
- 2.文件扫描路径错误
- 3.@Component("className")中的名称与getBean("className")中的名称不一致
- 4.spring版本过高
逐一检查后发现,我貌似并没有以上错误。
最后反复与老师代码比对,发现我的扫描路径,即xml文件中的base-package中写的目录是java

而老师写的是更细的目录,非目录(java)。

此处因为我的dao包和service包直接放在了java包下,为了可以同时扫描到这两个包,我便自作聪明的将扫描路径直接改成java。。。。
接着就出现了这个错误。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
- 如何解决Could not transfer artifact org.springframework.boot问题
- 解决IDEA报错Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded
- SpringBoot引入Redis报org.springframework.data.redis.core.RedisTemplate类找不到错误问题
- 程序包org.springframework.boot不存在的问题解决
- 解决程序启动报错org.springframework.context.ApplicationContextException: Unable to start web server问题
相关文章
Java中StringBuilder与StringBuffer的区别
在Java编程中,字符串的拼接是一项常见的操作。为了有效地处理字符串的拼接需求,Java提供了两个主要的类:StringBuilder和StringBuffer,本文主要介绍了Java中StringBuilder与StringBuffer的区别,感兴趣的可以了解一下2023-08-08
java链表数据结构LinkedList插入删除元素时间复杂度面试精讲
这篇文章主要为大家介绍了java LinkedList插入和删除元素的时间复杂度面试精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-10-10


最新评论