Knife4j文檔請(qǐng)求異常問題及解決過程
再學(xué)習(xí)黑馬蒼穹外賣項(xiàng)目swagger時(shí),按照相同的配置方式,再更改數(shù)據(jù)庫用戶名和密碼后,啟項(xiàng)目時(shí)請(qǐng)求swagger生成的接口文檔時(shí)遇到了Knife4j請(qǐng)求異常的問題,經(jīng)過數(shù)小時(shí)努力,現(xiàn)已解決,方法如下,可供參考:
一、根據(jù)Knife4j官方異常處理
參考方法自檢:
??????https://doc.xiaomi nfo.com/docs/faq/knife4j-exception??????
二、檢查Spring Boot 版本兼容性
首先,確保您了解您的項(xiàng)目所使用的Spring Boot版本。
以下是一些常見的Spring Boot版本及其對(duì)應(yīng)的Knife4j版本兼容推薦:
| Spring Boot版本 | Knife4j Swagger2規(guī)范 | Knife4j OpenAPI3規(guī)范 |
|---|---|---|
| 1.5.x~2.0.0 | <Knife4j 2.0.0 | >=Knife4j 4.0.0 |
| 2.0~2.2 | Knife4j 2.0.0 ~ 2.0.6 | >=Knife4j 4.0.0 |
| 2.2.x~2.4.0 | Knife4j 2.0.6 ~ 2.0.9 | >=Knife4j 4.0.0 |
| 2.4.0~2.7.x | >=Knife4j 4.0.0 | >=Knife4j 4.0.0 |
| >= 3.0 | >=Knife4j 4.0.0 | >=Knife4j 4.0.0 |
Knife4j在之前的版本更新中,逐漸提供了一些服務(wù)端適配的增強(qiáng)特性功能。
三、更改項(xiàng)目Spring Boot版本
1.將項(xiàng)目中父模塊sky-take-out的pom.xml文件中父依賴Spring Boot 改為2.7.3
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.7.3</version>
</parent>2.將工程中所有knife4j依賴版本號(hào)改為3.0.2
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>3.更改項(xiàng)目java編譯器的版本 使用jdk11即可。操作如下:點(diǎn)擊File-->Project Structer

4.同時(shí)做如下更改 同樣將Spring Boot的編譯版本改為11


5.以上更改完成后,還需要做出最后一步,在maven中對(duì)父工程install:

四、啟動(dòng)項(xiàng)目
訪問http://localhost:8080/doc.html,可以訪問如下的swagger接口頁面,至此問題就解決了。

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- SpringBoot 3.5 集成 Knife4j 4.3的詳細(xì)步驟
- SpringBoot集成Knife4j/Swagger:接口文檔自動(dòng)生成,告別手寫API文檔
- SpringBoot集成Knife4j實(shí)現(xiàn)接口文檔和參數(shù)校驗(yàn)
- SpringBoot整合knife4j3.0.3實(shí)現(xiàn)過程
- springboot升級(jí)到3.5.x后knife4j文檔無法識(shí)別問題及解決過程
- springboot3整合knife4j超詳細(xì)教程(不帶swagger2玩)
- Swagger/Knife4j文檔注解不更新問題的常見解決方案
相關(guān)文章
關(guān)于SpringMVC在Controller層方法的參數(shù)解析詳解
在SpringMVC中,控制器Controller負(fù)責(zé)處理由DispatcherServlet分發(fā)的請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于SpringMVC在Controller層方法的參數(shù)解析的相關(guān)資料,需要的朋友可以參考下2021-12-12
SpringBoot基于JAXB實(shí)現(xiàn)天地圖路徑規(guī)劃結(jié)果XML轉(zhuǎn)JSON
這篇文章主要為大家詳細(xì)介紹了SpringBoot如何基于JAXB實(shí)現(xiàn)將天地圖路徑規(guī)劃結(jié)果XML轉(zhuǎn)JSON功能,文中的示例代碼講解詳細(xì),需要的可以了解下2025-02-02
Java中l(wèi)ong類型與Long類型的區(qū)別和大小比較詳解
這篇文章主要給大家介紹了Java中l(wèi)ong類型與Long類型區(qū)別和大小比較的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11
MyBatis實(shí)現(xiàn)插入大量數(shù)據(jù)方法詳解
最近在公司項(xiàng)目開發(fā)中遇到批量數(shù)據(jù)插入或者更新,下面這篇文章主要給大家介紹了關(guān)于MyBatis實(shí)現(xiàn)批量插入的相關(guān)資料,需要的朋友可以參考下2022-11-11
Spring Cloud Stream分區(qū)分組原理圖解
這篇文章主要介紹了Spring Cloud Stream的分區(qū)和分組,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
Java實(shí)現(xiàn)跨服務(wù)器上傳文件功能
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)跨服務(wù)器上傳文件功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
java.util.Date和java.time.LocalDate對(duì)比及分析
本文介紹了java.util.Date和java.time下的日期兩種日期類型的區(qū)別和使用場(chǎng)景,前者表示一個(gè)瞬時(shí)時(shí)間點(diǎn),包含日期+時(shí)間,后者僅表示純?nèi)掌?后者時(shí)區(qū)無關(guān)聯(lián),而前者依賴操作系統(tǒng)時(shí)區(qū)顯示,兩者之間可以相互轉(zhuǎn)換,并且可以格式化輸出2026-05-05

