解决Maven无法解析依赖、相关依赖爆红、Maven构建报错:Failed to read artifact descriptor for jar、Could not find artifact
场景描述
Maven提示无法解析依赖
相关依赖爆红
Maven构建报错:Failed to read artifact descriptor for jar、Could not find artifact
一番刷新,重新下载依赖、clean、compile等操作均无效,依赖始终不能被识别
解决方案
下载依赖包多次失败导致后续依赖下载停止
出现以下类似情况,则说明下载Jar包失败
Could not transfer artifact org.glassfish:javax.el:pom:3.0.1-b06-SNAPSHOT
1.请查看下文方案:检查Mavn镜像仓库配置
尝试解决
2.当时报错有个提示,说从某某仓库下载该Jar包失败,访问该提示仓库发现确实不存在,请查看下午方案:下载依赖安装到本地
尝试解决
3.核心:
当Mavn下载Jar失败一定次数后就不会继续下载导致很多依赖没有下载下来,故所有依赖一片红色,访问本地仓库,找到该Jar位置,将 *.pom.lastupdate
修改为*.pom
(注意:此方式不可取,建议找到相关依赖进行排除解决),然后执行常规操作(刷新,重加载)会发现开始下载相关依赖,完成后关闭项目重新进入,问题解决。
javax.el-3.0.1-b06-SNAPSHOT.pom.lastupdate =》javax.el-3.0.1-b06-SNAPSHOT.pom
检查Idea的Maven配置
删除项目信息
退出IDEA,删除项目产生的.idea
目录、projectName.iml
文件,重新进入IDEA打开项目
使用脚本清除下载失败的依赖
使用脚本一键清除Maven仓库下载失败的jar包,创建Mavn-Clear.bat脚本,内容如下:
set REPOSITORY_PATH=D:\Development\Maven\repository
rem 正在搜索无效依赖......
for /f "delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\*lastUpdated*"') do (
del /s /q %%i
)
rem 清理无效依赖成功......
pause
注意:文件编码问题,若乱码,可根据操作系统不同设置对应编码,如window需设置文件编码为GBK
检查Mavn镜像仓库配置
查看Mavn的Config目录下的settings.xml文件,检查其镜像仓库配置,尽量多配置几个maven仓库
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<!-- 中央仓库1 -->
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<!-- 中央仓库2 -->
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
</mirrors>
检查依赖坐标是否正确
访问镜像仓库进行搜索,确保引入依赖存在
如访问:https://mvnrepository.com/
搜索fastjson
,确认坐标、版本等信息是否与引入依赖坐标版本等信息一致
下载依赖安装到本地
若始终无法下载,直接访问中央仓库(如访问:https://mvnrepository.com/
),搜索依赖并下载,然后安装到本地仓库
mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.0.0 -Dpackaging=jar -Dfile=fastjson-2.0.1.jar
-DgroupId:Jar对应groupId :<groupId>com.alibaba</groupId>
-DartifactId: Jar对应artifactId:<artifactId>fastjson</artifactId>
-Dversion: Jar对应version: <version>1.0.0</version>
-Dfile:安装的Jar:fastjson-2.0.1.jar
最后项目引入
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.0.0</version>
</dependency>
重新下载Maven
疑是maven安装目录东西缺失,故重新下载安装
访问https://maven.apache.org/download.cgi
下载最新Maven
访问https://maven.apache.org/docs/history.html
选择需要版本下载Maven
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136978.html