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之间是没有空格的


目录
相关文章
|
6天前
|
Java Apache Maven
Maven 项目文档
在C:/MVN下,使用命令`mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false`创建Maven Java项目。确保`pom.xml`包含`maven-site-plugin`和`maven-project-info-reports-plugin`配置,版本分别至少为3.3和2.7,以避免`NoClassDefFoundError`。
|
5天前
|
Java Maven
Maven 构建 Java 项目
使用 Maven 的 archetype:generate 命令创建 Java 项目,如 `mvn archetype:generate` -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false,在 C:\MVN 下生成基于 maven 的 consumerBanking 项目。
|
8天前
|
Java Maven
SpringBoot项目的用maven插件打包报Test错误
SpringBoot项目的用maven插件打包报Test错误
|
9天前
|
Java Maven
Maven配置以及IDEA设置(Cannot resolve plugin org.apache.maven.plugins:报错)
Maven配置以及IDEA设置(Cannot resolve plugin org.apache.maven.plugins:报错)
37 1
|
1天前
|
Java Apache Maven
Maven 项目文档
在C:/MVN下创建`consumerBanking` Maven项目,使用命令`mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false`。
|
2天前
|
Java Maven
Maven 引入外部依赖
在 Maven 项目中引入外部依赖,如 ldapjdk.jar,通常涉及两个步骤。首先,在 src/lib 文件夹下添加 jar 文件,然后在 pom.xml 的 dependencies 部分声明该依赖,使用 system 策略
|
3天前
|
Java Apache Maven
Maven 项目文档
在 `C:/MVN` 创建 `consumerBanking` Maven项目,使用命令:`mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false`。
|
4天前
|
XML Java 测试技术
Maven 构建 & 项目测试
本节介绍了如何使用Maven进行Java应用的构建和测试。在`C:\MVN\consumerBanking`项目中,`pom.xml`配置了JUnit测试框架。执行`mvn clean package`命令,Maven会清理目标目录、编译源码和测试代码,运行测试,并生成`consumerBanking-1.0-SNAPSHOT.jar`。测试报告位于`surefire-reports`目录。
|
7天前
|
前端开发 JavaScript Java
Maven实战 Item3 -- Maven项目构建2_构建一个maven2 3项目
Maven实战 Item3 -- Maven项目构建2_构建一个maven2 3项目
|
7天前
|
JavaScript 安全 前端开发
Maven实战 Item2 -- Maven项目构建(手动)_term2 配置maven(2)
Maven实战 Item2 -- Maven项目构建(手动)_term2 配置maven(2)