解決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>
使用注解出現(xiàn)Exception in thread“main“ org.springframework.beans.factory.NoSuchBeanDefinitionExce錯誤,附帶解決
跟著B站視頻學習注解開發(fā)時,莫名報錯,控制臺報錯如下。

附上相關(guān)代碼和目錄結(jié)構(gòu)




百度到的解決方案大致分三四種
- 1.applicationContext.xml配置文件沒有進行context掃描
- 2.文件掃描路徑錯誤
- 3.@Component("className")中的名稱與getBean("className")中的名稱不一致
- 4.spring版本過高
逐一檢查后發(fā)現(xiàn),我貌似并沒有以上錯誤。
最后反復(fù)與老師代碼比對,發(fā)現(xiàn)我的掃描路徑,即xml文件中的base-package中寫的目錄是java

而老師寫的是更細的目錄,非目錄(java)。

此處因為我的dao包和service包直接放在了java包下,為了可以同時掃描到這兩個包,我便自作聰明的將掃描路徑直接改成java。。。。
接著就出現(xiàn)了這個錯誤。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- 如何解決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問題
相關(guān)文章
Java中StringBuilder與StringBuffer的區(qū)別
在Java編程中,字符串的拼接是一項常見的操作。為了有效地處理字符串的拼接需求,Java提供了兩個主要的類:StringBuilder和StringBuffer,本文主要介紹了Java中StringBuilder與StringBuffer的區(qū)別,感興趣的可以了解一下2023-08-08
java鏈表數(shù)據(jù)結(jié)構(gòu)LinkedList插入刪除元素時間復(fù)雜度面試精講
這篇文章主要為大家介紹了java LinkedList插入和刪除元素的時間復(fù)雜度面試精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10

