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:可以制定查询条件

显示结果

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

可参考的类似文章

相关推荐
忧郁的Mr.Li11 分钟前
SpringBoot中实现多数据源配置
java·spring boot·后端
yq19820430115624 分钟前
静思书屋:基于Java Web技术栈构建高性能图书信息平台实践
java·开发语言·前端
一个public的class26 分钟前
你在浏览器输入一个网址,到底发生了什么?
java·开发语言·javascript
有位神秘人27 分钟前
kotlin与Java中的单例模式总结
java·单例模式·kotlin
golang学习记32 分钟前
IntelliJ IDEA 2025.3 重磅发布:K2 模式全面接管 Kotlin —— 告别 K1,性能飙升 40%!
java·kotlin·intellij-idea
爬山算法35 分钟前
Hibernate(89)如何在压力测试中使用Hibernate?
java·压力测试·hibernate
消失的旧时光-19431 小时前
第十四课:Redis 在后端到底扮演什么角色?——缓存模型全景图
java·redis·缓存
BD_Marathon1 小时前
设计模式——依赖倒转原则
java·开发语言·设计模式
BD_Marathon1 小时前
设计模式——里氏替换原则
java·设计模式·里氏替换原则
Coder_Boy_1 小时前
Deeplearning4j+ Spring Boot 电商用户复购预测案例中相关概念
java·人工智能·spring boot·后端·spring