maven-helper插件解决jar包冲突实战

经常遇到jar包冲突问题,今天梳理一下:

1、打开idea

2、安装后 打开pom文件

点击

3、点击common-io

展示冲突的jar,标红的就是冲突版本,白色的是当前的解析版本。

pom文件多了排除的信息

复制代码
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-openfeign-core</artifactId>
	<exclusions>
		<exclusion>
			<artifactId>commons-io</artifactId>
			<groupId>commons-io</groupId>
		</exclusion>
	</exclusions>
</dependency>

#注释如下
<dependency>
    <groupId>冲突依赖的groupId</groupId>
    <artifactId>冲突依赖的artifactId</artifactId>
    <version>冲突依赖的版本</version>
    <exclusions>
        <exclusion>
            <groupId>要排除的传递性依赖的groupId</groupId>
            <artifactId>要排除的传递性依赖的artifactId</artifactId>
        </exclusion>
    </exclusions>
</dependency>

4、排除指定的版本

刷新后冲突消失

显示无冲突

二、测试验证

1、gt-main 包的验证

gt-main 是 GeoTools 库的核心模块之一,它依赖于多个子模块来提供 GIS 功能。这些子模块在处理地理数据的不同方面扮演着重要角色。gt-main 本身主要是 GeoTools 框架的核心功能,但它依赖的子模块包括:

gt-opengis: 用于实现 OpenGIS 标准的接口。

gt-api: 提供 GeoTools 的通用 API 和接口。

gt-referencing: 处理空间参考系(CRS)和坐标转换。

gt-data: 处理数据源和数据存储。

gt-coverage: 支持栅格数据的处理和操作。

这些模块共同支持 gt-main,提供对不同地理信息处理和数据格式的支持。

但是gt-main源码包的pom文件中没有找到gt-opengis 配置

因此,只能收到添加到pom文件了

复制代码
             <dependency>
                 <groupId>org.geotools</groupId>
                 <artifactId>gt-opengis</artifactId>
                 <version>28.0</version>
             </dependency>

2、通过命令查看是否有jar包冲突

复制代码
 mvn dependency:tree

 mvn dependency:tree -Dverbose -Dincludes=要查询的jar包

 #首先可以在上图中看出来该jar包所对应pom.xml配置的groupId和artifactId为jakarta.validation:jakarta.validation-api,中间是冒号分隔的,
  • dependency:tree:表示树状显示。
  • -Dverbose:表示可以显示所有的引用,包括因为多次引用重复而忽略的。
  • -Dincludes:可以制定查询条件

显示结果

到此,暂时分享告一段落,后续继续更新,敬请期待!

可参考的类似文章

相关推荐
Anastasiozzzz1 小时前
Redis的键过期是如何删除的?【面试高频】
java·数据库·redis·缓存·面试
老神在在0011 小时前
Token身份验证完整流程
java·前端·后端·学习·java-ee
王九思1 小时前
Java 内存分析工具 MAT
java·开发语言·安全
浅水壁虎1 小时前
任务调度——XXLJOB2(调度中心)
java·spring boot·spring
青火coding1 小时前
SOFAServerless架构的意义
java·运维·中间件·架构·serverless
夕除1 小时前
java--2
java·开发语言
源码获取_wx:Fegn08952 小时前
计算机毕业设计|基于springboot + vue景区管理系统(源码+数据库+文档)
java·vue.js·spring boot·后端·课程设计
李少兄2 小时前
Git 忽略文件机制:.gitignore 与 .git/info/exclude
java·git·elasticsearch
☀Mark_LY2 小时前
个人数据同步es小工具
java·elasticsearch
组合缺一2 小时前
开发 Java MCP 就像写 Controller 一样简单,还支持 Java 8
java·人工智能·llm·solon·java8·mcp