maven问题整理

简介: maven问题整理

一、下载Jar包报错

尽量使用Idea默认的Maven配置,因为有缓存以及Idea自己下载Maven相关问题。表面上看到的并不是它实际使用的Maven地址。

1、方式一:可能现在使用的,不是你配置的

打开系统默认的maven配置文件settings.xml,将地址改为Aliyun地址。

虽然看起来不可思议,但是确是我换了maven版本,很多操作也没解决的问题。

<mirrors>
 <mirror>
  <id>nexus-aliyun</id>
  <mirrorOf>central</mirrorOf>
  <name>Nexus aliyun</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>

2、方式二:多环境配置,未指定当前环境

3、方式三:已下载过,但是未成功

在使用maven过程中,我们所使用的jar包是会到中央仓库中进行下载的,但是如果再下载过程中因为网络不通畅等原因,会导致jar包下载失败,并且会形成一个xxxx.lastupdated的文件,但是此时maven并不会将其删掉后重新下载,而是认为它下载过了,我们需要做的是将.xxxxlastupdated文件手动删除后,再次重新下载。

二、右侧依赖报错

右侧mavenDependencies依赖报错,并且下面一直在加载maven相关信息。

1、方式一:重新加载dependencies

pom文件中,注释后,加载maven,使Dependencies中无依赖项。

再次取消注解,加载maven依赖。

2、方式二:杀死Maven进程

一直长时间加载Maven依赖,要不是依赖太大,要不就是卡死了。找到电脑中Maven进行,将它杀死,再进行maven加载。

一般是一个Java进程。杀死后Maven依赖加载进程会停止。

三、Jar包冲突

jar包冲突往往是发生在,同一个项目在运行时导入了两个相同jar包的不同版本,又因为两个不同版本的jar包代码是不一样的,是冲突的,导致在运行时,报出各种莫名其妙的错误。

以上依赖中,thymeleaf-spring5–3.0.12是天然依赖于thymeleaf的3.0.12版本的依赖的,但是因为我们自己的导入是thymeleaf 3.0.11版本,这两个版本代码差距巨大,就会导致jar包冲突问题。

1、方式一:排除法

要么不要导入3.0.11版本依赖,或者你选在将thymeleaf-spring5–3.0.12的依赖中的thymeleaf的3.0.12版本排除掉(图解是排除的方式)

2、方式二:dependencyManagement

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>2.0.20</version>
        </dependency>
    </dependencies>
</dependencyManagement>

3、方式三:properties

从项目父类,找到springboot的依赖管理器spring-boot-dependencies

从里面看到commons-lang3的依赖配置管理方式。

<properties>
  <commons-lang3.version>3.8.1</commons-lang3.version>
</properties>
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>${commons-lang3.version}</version>
    </dependency>
  </dependencies>
</dependencyManagement>

自己项目中使用

<properties>
    <java.version>1.8</java.version>
    <commons-lang3.version>3.8.0</commons-lang3.version>
</properties>

四、相关下载

1、Aliyun镜像配置

<mirrors>
  <mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</u
  </mirror>
</mirrors>

Aliyun镜像

https://download.csdn.net/download/weixin_44624117/86247730
目录
相关文章
|
IDE Java Apache
Maven知识【Maven简介】第一章
Maven知识【Maven简介】第一章
|
Java 数据库连接 Maven
Maven学习(三)
Maven学习
73 0
|
Java Linux Maven
Maven学习(一)
Maven学习
53 0
|
Java 测试技术 数据库连接
Maven实战
Maven是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM):POM(Project Object Model):项目对象模型!
Maven实战
|
XML Java Go
要面试了?Maven相关知识都给你整理好了
现在正值金三银四的好时节,面试前的准备必然不能少,毕竟一次好的面试准备对于是否能找到好的OFFER和提高自己的薪资有很大的帮助。
|
算法 IDE Java
Maven实战与原理分析(一):maven超全使用指南总结
Maven实战与原理分析(一):maven超全使用指南总结
|
Java 测试技术 Apache
|
Java Maven
|
Java 测试技术 Apache