IDEA中各种Maven相关问题(文件飘红、下载依赖和启动报错)

错误情况

包名、类名显示红色、红色波浪线,大量依赖提示不存在(程序包xxx不存在)

工程无法启动

一、前提条件

1、使用英文原版IDEA

汉化版的可能有各种奇怪的问题。建议用IDEA英文版,卸载重装。

2、下载maven,配置环境变量

cmd mvn --version 确认。

3、在IDEA中,配置好Maven

重点:配置文件使用aliyun仓库的配置文件,把这个文件解压出来放到maven的config目录
https://wiki.bafangwy.com/media/attachment/2023/11/settings-aliyun.zip

注意:为了避免每个工程都重复设置,需要在这里面也为Maven做同样配置,可以一劳永逸:

4、必须打开工程的根目录

也就是说,打开里面有一个pom.xml的文件夹,而不是其他文件夹。

不然Maven无法将其识别为一个maven工程,自然无法下载依赖。

错误情况1,根本没看到pom.xml:

错误情况2,打开的是maven工程的上一级目录:

正确:

只要前面这四步没问题,一般依赖都不会出错

二、测试Maven是否能正常工作的方法

点击"刷新图标",重新下载依赖。

或者先cleanpackage。看看会不会报错。
如果报错了,我们就根据具体的错误情况进行解决(百度)

错误情况1、pom.xml里面只有一两行报错

哪个jar包下载不下来,就解决哪个jar包的问题。

举例,假设这个依赖是红色:

bash 复制代码
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

解决办法1:

使用everything搜索spring-boot-starter-actuator,找到你的仓库文件夹的具体位置。

比如:文件夹:D:\repository\org\springframework\boot\spring-boot-starter-actuator\2.6.6

在里面把名字带.lastUpdate的文件全部删掉

然后再次点击"刷新"图标,看看红色是否消失。

解决办法2

如果还是下载不下来,还可以到maven中央仓库(https://mvnrepository.com/ )下载这个jar包,直接放到对应的目录。

搜索:

如果不确定版本,就找一个使用多的(出现版本冲突再换):

点击这里下载jar包

放到指定目录(用everything搜这个报名就能找到这个文件夹,比如spring-boot-starter-actuator):

前面是maven仓库地址;后面是组织名(前面的<groupId>)+版本号

举例2:

以下jar报错:

解决办法:

下载:maven-site-plugin-3.7.1.jar

放到org\apache\maven\plugins\maven-site-plugin\3.7.1

错误情况2 pom.xml里面大面积报错

那么这个时候需要根据控制台的具体错误去解决。

只要你去搜索引擎搜索具体的报错信息,一定会有很多人遇到过一样的情况(注意选择搜索的关键字)。

没错!不管是任何错误,最终都是根据搜索引擎给出的方案解决的。
因为老师也不可能所有的问题都遇到过,而且每个人的电脑环境不同,不一定是同一个原因造成的,所以解决问题最重要的是去尝试。

例如报错:

bash 复制代码
Failure to transfer org.springframework.boot:spring-boot-starter-parent:
pom:2.6.3-SNAPSHOT from https://repo.spring.io/snapshot was cached in the local repository, 
resolution will not be reattempted until the update interval of spring-snapshots 
has elapsed or updates are forced. Original error: Could not transfer artifact 
org.springframework.boot:spring-boot-starter-parent:pom:2.6.3-SNAPSHOT from/to 
spring-snapshots (https://repo.spring.io/snapshot): Transfer failed for 
https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-starter-
parent/2.6.3-SNAPSHOT/spring-boot-starter-parent-2.6.3-SNAPSHOT.pom

把这里面的方法都试了一遍还是不能解决。
https://blog.csdn.net/qq_39326472/article/details/104405691

这个时候就要转换思路了。比如百度搜索引擎没有正确答案,可以用谷歌搜索,试试其他方法。

这个问题最后的解决办法:

IDEA右边maven面板,双击install,才把依赖下载下来,问题得到解决。

错误情况3、package和install都是成功的,但是还是没有依赖

类依然是红色报错。

甚至右侧的maven工具栏,就看不到dependencies这个东西:

解决办法

删除原工程,重新解压代码工程的压缩包,用IDEA打开

错误情况4、Maven依赖问题,根据搜索答案解决不了

有的同学IDEA有问题,导致maven依赖解决不了

解决办法

下载新一点的IDEA工具,版本:2022.3
https://pan.baidu.com/s/1ndEarw-sKQvtpMmCvyoAkQ?pwd=b5in

相关推荐
凯哥Java几秒前
优化批处理流程:自定义BatchProcessorUtils的设计与应用
java·数据库·mysql
周湘zx6 分钟前
k8s中的存储
linux·运维·云原生·容器·kubernetes
Linux猿6 分钟前
828华为云征文 | 云服务器Flexus X实例:one-api 部署,支持众多大模型
服务器·大模型·llm·华为云·flexus云服务器x实例·华为云服务器·one-api
njnu@liyong9 分钟前
AOP-前置原理-怎么判断和拦截?
java·aop·拦截
末央&14 分钟前
【C++】内存管理
java·开发语言·c++
SevenUUp18 分钟前
Android Manifest权限清单
android
高林雨露19 分钟前
Android 检测图片抓拍, 聚焦图片后自动完成拍照,未对准图片的提示请将摄像头对准要拍照的图片
android·拍照抓拍
wilanzai23 分钟前
Android View 的绘制流程
android
心之语歌27 分钟前
设计模式 享元模式(Flyweight Pattern)
java·设计模式·享元模式
MTingle28 分钟前
【Java EE】文件IO
java·java-ee