maven项目(引入依赖失败, pom.xml 报错\爆红)

简介: maven项目(引入依赖失败, pom.xml 报错\爆红)

☺ 引入项目过程中,idea引入磁盘的某个的maven项目

这里以springboot项目以例子,发现pom.xml 的依赖大面积爆红,springboot的版本依赖也报错了,然后发现下面有进度条在下载,下载了非常久还没有下载成功

  • 对于springboot项目版本依赖报错
    解决方式1:更换一个spirngboot版本;
    解决方式2:等待继续下载该版本的spirngboot依赖(尤其是第一次使用该版本的springboot依赖会下载比较久);
    建议:平时建立springboot项目,springboot的版本尽量使用某个稳定的版本


  • 其他依赖报错
    考虑引入maven项目方式,比如在idea 直接 open 打开springboot的maven项目,这种引入方式默认的maven配置是在C盘,而我的maven安装目录是在E盘,导致本地仓库已有的一些依赖没法给项目使用上
    解决方式:修改一下idea maven的配置;

为什么要选择open 引入maven项目呢?因为idea版本问题[我的idea 是 2020.03],没有import 的方式呀

  • 考虑若是父子工程,父工程使用了标签 管理依赖,要先注释掉该标签以及管理的所有依赖,然后子工程下载完成好需要的依赖后,再恢复该标签



☺ 写项目过程中,pom.xml 文件引入某个依赖失败/ maven项目中 jar包下载失败的解决


一、常规解决操作

1、maven的jar包提示找不到

  • 刷新,等它下载完成[可以看到有进度条在下载,同样对于建立项目的时候,pom.xml 爆红,也是看到进度条在下载,那么就等它下载]
  • 更换该jar包对应的version [ 选择手动输入groupId和artifactId,这样它就会提示version ]


2、考虑项目是不是父子工程(单一模块/多模块)

  • 如果是maven的父子工程,考虑父工程中是否使用标签 <dependencyManagement> 来管理依赖,如果有使用该标签,则会导致的一种情况是:子模块中导入某个依赖(该依赖不需要再父工程导入,只用在某个子模块中),子模块导入成功,没有报错但是通过maven工具的窗口观察,发现依赖并没有出现在Dependecies
  • 再次验证依赖可能真的没有导入成功的方式是: 按住ctr点击引入依赖的groupId或artifactId标签,进入该文件,发现爆红,则真的没有导入成功


3、考虑是引错公司提供的的名称相同的jar包[即groupId:不同,公司不同、artifactId:相同,项目名相同]

■ 介绍一下 maven 的pom.xml 中的依赖的坐标groupId、artifactId:

  • groupId: 公司域名,项目的包名
  • artifactId:项目名

------------ 之所以介绍 groupId、artifactId,是因为在 pom.xml 有时候引入依赖发生错误,提示找不到类的时候,需要考虑是不是 groupId、artifactId 引入错误 ------------

■ 举例,artifactId:同样是 commons.codec的,在maven仓库中,就找到了三个不同的groupId:

<!-- 在项目引入报错,提示找不到 -->
<!-- https://mvnrepository.com/artifact/commons.codec/commons-codec -->
<dependency>
    <groupId>commons.codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.6</version>
</dependency>
<!-- 在项目引入成功,可以正常使用该jar包的方法 -->
<!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.15</version>
</dependency>
<!-- 在项目引入成功,可以正常使用该jar包的方法 -->
<!-- https://mvnrepository.com/artifact/org.apache.directory.studio/org.apache.commons.codec -->
<dependency>
    <groupId>org.apache.directory.studio</groupId>
    <artifactId>org.apache.commons.codec</artifactId>
    <version>1.8</version>
</dependency>


实在不行,手动导入!!!


二、手动下载引入操作

1、从maven仓库下载对应版本的jar包到自己的电脑:


2、命令行向maven项目导入jar包,然后刷新一下maven项目:

mvn install:install-file -Dfile="jar包的位置" -DgroupId=jar包的groupId坐标 -DartifactId=jar包的artifactId坐标 -Dversion=jar包的version坐标 -Dpackaging=jar


■ 细节:

1、通过cmd 导入jar包的前提是计算机需要先配置好maven的环境变量

2、install-file之间是没有空格的


目录
相关文章
|
2月前
|
Java Maven
Maven编译报错
Maven编译报错
66 1
|
3月前
|
Java Maven 容器
java依赖冲突解决问题之Maven在编译打包过程中对依赖的jar包如何解决
java依赖冲突解决问题之Maven在编译打包过程中对依赖的jar包如何解决
|
12天前
|
Java Maven
maven打瘦包,且只打入部分想打入的依赖瘦包
maven打瘦包,且只打入部分想打入的依赖瘦包 设计 工程结构分析 环境管理 城市资源 安全工程 工程管理
42 10
|
11天前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
63 8
|
25天前
|
Java API Apache
除了 Maven,还有哪些工具可以管理项目的依赖和版本冲突
除了Maven,常用的项目依赖管理和版本冲突解决工具有Gradle、Ivy、Ant+Ivy、SBT等。这些工具各有特点,适用于不同的开发环境和需求。
|
1月前
|
XML 安全 Java
【Maven】依赖管理,Maven仓库,Maven核心功能
【Maven】依赖管理,Maven仓库,Maven核心功能
514 3
|
1月前
|
Java Maven
Maven 依赖管理
Maven 一个核心的特性就是依赖管理。当我们处理多模块的项目(包含成百上千个模块或者子项目),模块间的依赖关系就变得非常复杂,管理也变得很困难。针对此种情形,Maven 提供了一种高度控制的方法。
69 5
|
2月前
|
Java Maven
Maven 引入外部依赖
如果我们需要引入第三方库文件到项目,该怎么操作呢?
36 5
|
3月前
|
安全 Java Maven
优化Maven镜像配置:使用阿里云加速依赖下载
更新Maven镜像配置至关重要,尤其使用阿里云仓库时。在`settings.xml`中加入特定镜像配置可显著提升依赖下载速度。示例配置指定了阿里云镜像ID、替代表态仓库、安全的URL、默认布局及启用版本管理。需定位至用户目录下的`.m2/`文件夹编辑`settings.xml`,添加镜像信息后保存测试。若下载仍慢,考虑网络状况或备选镜像。多镜像设置时需注意避免冲突。
556 3
|
3月前
|
Java 测试技术 Maven
单元测试问题之在Maven项目中引入JUnit 5和Mockito的依赖如何解决
单元测试问题之在Maven项目中引入JUnit 5和Mockito的依赖如何解决
192 1