美文网首页
【Maven学习】maven-enforcer-plugin的使

【Maven学习】maven-enforcer-plugin的使

作者: 端木轩 | 来源:发表于2017-06-08 09:03 被阅读758次

我们会经常碰到这样的问题,在pom中引入了一个jar,里面默认依赖了其他的jar包。jar包一多的时候,我们很难确认哪些jar是我们需要的,哪些jar是冲突的。此时会出现很多莫名其妙的问题,什么类找不到啦,方法找不到啦,这种可能的原因就是jar的版本不是我们所设想的版本,但是我们也不知道低版本的jar是从哪个maven里面引用的。此时我们的maven-enforcer-plugin就可以登场了。

<project>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>1.4.1</version>
        <executions>
          <execution>
            <id>enforce</id>
            <configuration>
              <rules>
                <dependencyConvergence/>
              </rules>
            </configuration>
            <goals>
              <goal>enforce</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

在进行mvn clean package的时候,会在console中打印出来冲突的jar版本和其父pom,如下:

Dependency convergence error for org.slf4j:slf4j-api1.6.1 paths to dependency are:
 
[ERROR]
Dependency convergence error for org.slf4j:slf4j-api:1.6.1 paths to dependency are:
+-org.myorg:my-project:1.0.0-SNAPSHOT
  +-org.slf4j:slf4j-jdk14:1.6.1
    +-org.slf4j:slf4j-api:1.6.1
and
+-org.myorg:my-project:1.0.0-SNAPSHOT
  +-org.slf4j:slf4j-nop:1.6.0
    +-org.slf4j:slf4j-api:1.6.0

这个时候,我们看一眼就知道应该把那个dependency中的哪个jar进行exclude。

这是一个小技巧,不过很管用。

相关文章

  • 【Maven学习】maven-enforcer-plugin的使

    我们会经常碰到这样的问题,在pom中引入了一个jar,里面默认依赖了其他的jar包。jar包一多的时候,我们很难确...

  • 【Maven学习】maven-assembly-plugin的使

    转自http://liugang594.iteye.com/blog/2093607 maven-assembly...

  • 2019-12-06 spring boot 配置选项

    maven 配置 maven 根据配置文件信息,自动导入相应的库文件 使java 的maven配置生效的操作,必须...

  • maven介绍

    什么是maven Maven 是专门用于构建和管理Java相关项目的工具。 Maven是意第绪语,依地语(犹太人使...

  • Maven快速上手

    1、Maven介绍 注:改章节的内容主要粘贴自:Maven学习总结(一)——Maven入门。Maven(这个单词来...

  • Maven学习(四) Maven 聚合 继承 单继承

    Maven学习(四) Maven 聚合 继承 单继承 聚合 Maven聚合:一个Maven项目,用来管理它的mav...

  • 2019-03-03

    技术:有关maven学习 互联网运营:关于运营和做简历 一、有关Maven的学习: 1、有关maven包的下载:h...

  • maven学习笔记

    maven学习笔记 2016年1月6日 一、maven安装 windows下maven安装安装maven前,首先要...

  • Dubbo(官方翻译)

    Dubbo概述(https://dubbo.incubator.apache.org/) 框架解析: Maven使...

  • maven的应用(摘自菜鸟教程)

    一直使用maven,缺少系统化学习,找了本教程,系统的了解和学习下 1 maven的基本概念 maven安装 po...

网友评论

      本文标题:【Maven学习】maven-enforcer-plugin的使

      本文链接:https://www.haomeiwen.com/subject/oaszfxtx.html