百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

maven jar 冲突解决方案(maven冲突解决原则)

liuian 2025-05-02 19:43 53 浏览

  1. mvn dependency:tree 查看依赖树

mvn dependency:tree -Dverbose -Dincludes=【groupId】:【artifactId】

如: mvn dependency:tree -Dverbose -Dincludes=com.alibaba:fastjson

2.idea 自带maven dependency分析功能

3.下载 idea 插件:maven helper。使用插件分析

基本上,通过1、3 就能解决问题了。

更多

背景: 项目是一个多 module 管理项目。项目根目录父 pom 管理所有 依赖版本。本次jar 冲突,是maven构建时,提示子pom 中存在 jar 版本冲突。

我本次通过 2、3 在子 pom 中没有发现 jar 存在多个版本,走了不少弯路。 既然子 pom 没问题,那只能是子pom中使用父 pom 中的jar有问题。

冲突的xx.jar,项目父 pom 中是这么定义的:

<dependencies>
    <dependency>
        <groupId>com.xx.xx</groupId>
        <artifactId>xx</artifactId>
        <version>1.1.1</version>
    </dependency>
</dependencies>

冲突的原因是: 项目父 pom 的 父 pom 的 父pom 中引入了 xx.jar,且 版本不是 1.1.1.

于是乎,采用了一种可行的解决方式:项目父 pom 中加入

<dependencyManagement>
    <dependencies>
        <dependency>
           	<groupId>com.xx.xx</groupId>
        	<artifactId>xx</artifactId>
        	<version>1.1.1</version>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependencies>
    <dependency>
        <groupId>com.xx.xx</groupId>
        <artifactId>xx</artifactId>
        <version>1.1.1</version>
    </dependency>
</dependencies>

相关推荐

Html中Css样式Ⅱ_html+css+

元素的定位(方式五种定位方式):静态定位:position:static;相对定位:position:relative;绝对定位:position:absolute;固定定位:position...

HTML 标签和属性值的基本格式_html标签及属性的语法规则

HTML:HyperTextMarkupLanguage超文本标记语言HTML代码不区分大小写,包括HTML标记、属性、属性值都不区分大小写;任何空格或回车键在代码中都无效,插入空格或回车有...

基于Visual Studio C#语言开发上位机,做定制设计后有多好看

...

C#中使用Halcon开发视觉检测程序教程

一、环境准备1.安装Halcon从Halcon官方网站下载适合你操作系统的安装包,按照安装向导完成安装。安装过程中,记住安装路径,后续配置环境时会用到。2.配置VisualStudio项目打开V...

【开源】C#功能强大,灵活的跨平台开发框架 - Uno Platform

前言今天给广大网友分享一个基于C#开源、功能强大、灵活的跨平台开发框架,她就是:UnoPlatform。通过UnoPlatform,开发者可以利用单一代码库实现多平台兼容,极大地提高了开发效率和...

C# 的发展简史_c#的发展前景

1.C#的诞生和初期(2000-2005)2000年:在微软的PDC大会上,由AndersHejlsberg首次公开展示了C#语言。2002年:微软发布了.NETFramework1.0,其...

Visual Studio 2010-C#跟西门子1200(Sharp7)窗体控制②-启动按钮

VisualStudio2010--C#跟西门子1200(Sharp7)窗体控制②--启动按钮上期回顾(上期主要是新建窗体应用程序,添加sharp7的类库并引用,建立一个button按钮):本期将...

Visual Studio窗口布局混乱后的恢复与优化指南

在使用VisualStudio进行开发时,我们常因误操作(如拖拽窗口、关闭面板、多显示器切换)导致界面布局混乱,代码编辑器、解决方案资源管理器、属性面板等组件“错位”,严重影响开发效率。本文将针对布...

使用Visual Studio 2017为AutoCAD创建一个c#模板

本教程的目标是展示如何在VisualStudio2017中创建AutoCAD的c#项目模板,该模板允许在调试模式下从VisualStudio加载DLL来自动启动AutoCAD。本文展示的示例使用...

IT科技-续3Visual Studio2019-C#实战练习

上次完成了登录页面的窗体设计,本次完成管理界面的设计。第一步ComBox控制深度操作点击编辑选项,加入预定选项,完成操作。第二步复制Buttons控件依次为保存、删除、重置、编辑按钮属性设置,参考...

如何在 C# 中将文本转换为 Word 以及将 Word 转换为文本

在现代软件开发中,处理文档内容是一个非常常见的需求。无论是生成报告、存储日志,还是处理用户输入,开发者都可能需要在纯文本与Word文档之间进行转换。有时需要将文本转换为Word,以便生成结构化的...

简短的C#入门教程 # C# 入门教程 C#(读作...

简短的C#入门教程#C#入门教程C#(读作CSharp)是一种由Microsoft开发的多范式编程语言,它具有广泛的应用,特别是在Windows平台上。本教程将介绍C#的基础知识,以帮助您入门这...

JavaScript中this指向各种场景_前端中this的指向

在JavaScript中,this的指向是一个核心概念,其值取决于函数的调用方式,而非定义位置(箭头函数除外)。以下是this指向的常见场景及具体说明:1.全局作用域中的this在全局作用域(非...

微信WeUI设计规范文件下载及使用方法

来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信Web开发量身设计,可以令用户的使用感知...

JavaScript技术:如何动态添加事件?

随着前端技术的不断发展,JavaScript已经成为了不可或缺的一部分,它可以让网页变得更加流畅和美观。但是,在JavaScript中动态添加事件还是一个比较困难的问题,为此,本文将从入门到精通,介绍...