Maven导包爆红(出错)的完整解决思路

Maven导包爆红(出错)的完整解决思路

相关场景:

1.导入的新项目,maven未把全部的包导入
2.创建父项目用来统一管理整个项目中技术的版本。但是在创建父项目时候较多新技术的jar包未被导入

场景一的解决方案(通用):

步骤一:

  • **主要思路:**检测idea对于maven的配置
    具体步骤:
    点击file->settings->查看maven版本是否和自己下载版本一致、仓库是否是自己在maven的config中settings.xml中配置的仓库位置。以及setting.xml位置是否是刚选择的maven中的settings.xml在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    其中Maven home directory是maven安装位置,User setting file是指你安装的maven中settings.xml的位置,local repository是指在settings.xml中配置的本地仓库的位置。若经过步骤一调整过后仍有问题请看步骤二。

步骤二:

主要思路:增加下载渠道,并且删除旧的下载失败的jar包

具体步骤:

  1. 在setting.xml中的<mirrors>中添加镜像。其中setting.xml在下载的maven中config里;
  2. 删除下载失败的jar包;
  3. 重新导包
    其中setting.xml的位置在下载的maven中的conf(配置文件)中。
    在这里插入图片描述
    镜像需要添加在中,添加的镜像为(若有重复的镜像可以不用再次添加了):
<mirror>
      <id>nexus-aliyun</id>
      <mirrorOf>*</mirrorOf>
      <name>Nexus aliyun</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
	<id>alimaven</id>
	<mirrorOf>central</mirrorOf>
	<name>aliyun maven</name>
	<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<mirror>
      <id>nexus</id>
      <name>internal nexus repository</name>
      <!-- <url>http://192.168.1.100:8081/nexus/content/groups/public/</url>-->
      <url>http://repo.maven.apache.org/maven2</url>
      <mirrorOf>central</mirrorOf>
</mirror>
<mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
      <id>nexus-aliyun</id>
      <mirrorOf>*</mirrorOf>
      <name>Nexus aliyun</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
</mirror>
<mirror> 
      <id>Central</id> 
      <url>http://repo1.maven.org/maven2</url> 
      <mirrorOf>central</mirrorOf> 
</mirror>

在本地仓库中搜索以.lastUpdated结尾的文件。这些文件都是下载失败的jar包
在这里插入图片描述
将搜到的所有文件ctrl+a,然后删除即可。
打开相关项目,点击右侧的maven,之后点击reImport即可。
在这里插入图片描述
至此,绝大多数的maven导包异常都已经解决。但是仍可能存在部分包导不进去,此时只能手工导入。

步骤三:

主要思路:一些jar包不知为何无法导入,此时需要手工导包

具体步骤:

  1. 找到在项目的pom.xml无法导入的包;
  2. 找同学或者同事将这些包传给你;
  3. 将这些包放到对应位置,然后重启idea即可(或者reimport都行,可能不做操作也可)

在这里插入图片描述

这个意思就是在本地仓库的com文件夹里的baomidou文件夹中缺少mybatis-plus-boot-starter文件的3.3.1版本,如果你从同学那要的文件夹包含这个则,只需要在对应位置上将这个3.3.1的包放到"本地仓库.com.baomidou.mybatis-plus-boot-starter"中即可。
在这里插入图片描述
我所找的这个是mybatis-plus-boot-starter的文件夹,其中只有一个3.3.1版本,若你本地方库中存在其他版本的mybatis-plus-boot-starter,但是没有你所需要的这个,那么你只需将对应版本放到这个mybatis-plus-boot-starter里面即可。
此时因为我的本地方库中也没有mybatis-plus-boot-starter,文件夹,因此需要创建个文件夹并找的的所需版本mybatis-plus-boot-starter copy进里面即可。
在这里插入图片描述
tips:pom.xml中依赖的groupId指的是artifactId需要在本地仓库中存放的位置,version是对应的artifactId的版本。
至此,应该九成以上的maven导包依赖问题解决了。

场景二(父工程导包出错):

**出错原因(猜测):**可能因为springboot版本问题,导致无法识别统一版本号

解决方案:

将中爆红的依赖,放到另一个项目中的中,并且指定你所需的中的版本即可。本人是这样解决掉父工程爆红错误的。若仍出错,可以参考场景一。

猜你喜欢

转载自blog.csdn.net/JasonLee97/article/details/108854778