IDEA maven加載依賴失敗不展示Dependencies項(xiàng)的解決方案
使用低版本maven時(shí)(3.6.3及以下),用IDEA非模板的方式手動(dòng)新建maven工程,有時(shí)候會(huì)遇到丟失Dependencies的情況,maven模塊僅展示一個(gè)Lifecycle項(xiàng),很多情況下是因?yàn)橹髂夸沵aven pom配置異常導(dǎo)致。
錯(cuò)誤示例如下:
<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 http://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>3.3.3</version>
</parent>
<groupId>com.xxx</groupId>
<artifactId>xxx-xxx</artifactId>
<version>1.0.0</version>
<name>xxx-xxx-ai</name>
<packaging>pom</packaging>
<description>XXX</description>
<modules>
<module>xxx-api</module>
<module>xxx-xxx</module>
</modules>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<java.version>21</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2023.0.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
……其他配置
</dependencyManagement>
……其他配置
</project>現(xiàn)象就是,當(dāng)某個(gè)操作或手動(dòng)操作觸發(fā)工程reimport時(shí),丟失Dependencies欄,僅展示標(biāo)紅部分(Plugins和Dependencies都缺失)。同時(shí)可能伴隨很多類提示查找依賴類失敗,大量import報(bào)紅。

‘
網(wǎng)上一堆解決方案,根本不通用,甚至連問(wèn)題原因都解釋不清楚,或者也沒(méi)有解釋如何定位問(wèn)題引導(dǎo)解決辦法。
這里有一個(gè)快速提示異常的辦法是,升級(jí)maven插件,例如使用3.9.11替換低版本的maven 3.6.3,注意使用相同setting和本地庫(kù),規(guī)避重新下載大量依賴文件。

這時(shí)候重新reload工程,控制臺(tái)就回提示你具體的問(wèn)題所在。

例如這里就是因?yàn)樯鲜鲋髂夸沺om.xml中,有一個(gè)依賴缺乏版本號(hào)。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
......
</dependencies>
</dependencyManagement>理論上,由于繼承父級(jí)依賴中的引用,所以子模塊中可以直接引用這個(gè)依賴,而不需要還在<dependencyManagement>標(biāo)簽中定義無(wú)版本引用,這是報(bào)錯(cuò)的根本原因。
在<dependencyManagement>標(biāo)簽中的無(wú)<version>標(biāo)簽的dependency,都當(dāng)加上版本號(hào),或者直接移除這些無(wú)版本號(hào)定義的<dependency>,重新reload即可解決問(wèn)題。如果依舊未出現(xiàn)Dependencies項(xiàng),可能由于idea的本地.idea配置未及時(shí)自動(dòng)刷新的原因,則考慮替換高版本后,reimport,然后換為低版本maven即可。
究其根本,其實(shí)是maven的pom文件配置規(guī)范,<dependencyManagement>標(biāo)簽中管理子模塊的統(tǒng)一依賴版本,必須明確定義其中的各<dependency>版本號(hào)。
到此這篇關(guān)于IDEA maven加載依賴失敗不展示Dependencies項(xiàng)的解決方案的文章就介紹到這了,更多相關(guān)idea maven加載依賴失敗內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java使用jdbc連接MySQL數(shù)據(jù)庫(kù)實(shí)例分析
這篇文章主要介紹了Java使用jdbc連接MySQL數(shù)據(jù)庫(kù),結(jié)合實(shí)例形式分析了Java基于jdbc鏈接mysql的相關(guān)配置及工具類的定義相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
解決Idea的選擇文件后定位瞄準(zhǔn)器"Select Opened File"的功能
使用IntelliJ IDEA時(shí),可能會(huì)發(fā)現(xiàn)"SelectOpenedFile"功能不見了,這個(gè)功能允許用戶快速定位到當(dāng)前打開文件的位置,若要找回此功能,只需在IDEA的標(biāo)題欄上右鍵,然后選擇"Always Select Opened File",這樣就可以重新啟用這個(gè)便捷的功能2024-11-11
Java 8 Function函數(shù)式接口及函數(shù)式接口實(shí)例
函數(shù)式接口(Functional Interface)就是一個(gè)有且僅有一個(gè)抽象方法,但是可以有多個(gè)非抽象方法的接口。接下來(lái)通過(guò)本文給大家介紹Java 8 Function函數(shù)式接口及函數(shù)式接口實(shí)例代碼,需要的朋友可以參考下2018-05-05
java通過(guò)Excel批量上傳數(shù)據(jù)的實(shí)現(xiàn)示例
Excel批量上傳是常見的一種功能,本文就來(lái)介紹一下java通過(guò)Excel批量上傳數(shù)據(jù)的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10
Swift洗牌動(dòng)畫效果的實(shí)現(xiàn)方法
這篇文章主要介紹了Swift洗牌動(dòng)畫效果的實(shí)現(xiàn)方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2016-12-12
在Spring Boot中實(shí)現(xiàn)文件上傳與管理的操作
在 Spring Boot 中實(shí)現(xiàn)文件上傳與管理非常簡(jiǎn)單,通過(guò)配置文件上傳、創(chuàng)建文件上傳、下載、列表和刪除接口,我們可以輕松地處理文件操作,結(jié)合前端頁(yè)面,可以提供一個(gè)完整的文件管理系統(tǒng),這篇文章主要介紹了在Spring Boot中實(shí)現(xiàn)文件上傳與管理,需要的朋友可以參考下2024-07-07
SpringMVC解析post請(qǐng)求參數(shù)詳解
今天小編就為大家分享一篇解決SpringMVC接收不到ajaxPOST參數(shù)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-08-08

