在pom.xml中引入一个依赖,maven会自动导入这个依赖的依赖,方便的同时也会造成jar包冲突:(1)A、B都依赖C,我们导入A(自动导入C)、B(自动导入C),maven自动导入了2个C,到底使用哪个C?这2个C冲突了,maven不知道该用哪个。(2)A依赖C,我们导入A(自动导入C),我们不知道已经有了C,自己又手动导了一个C。我们直接导入的依赖叫做直接依赖,比如A;maven自动导入的
转载
2021-05-17 16:10:37
367阅读
2评论
pom.xml不添加servlet-api依赖,那么项目直接就会报错,因为你创建的是一个servlet的子类,编译也无法通过,会报找不到类错误,英文我就不说了。但pom.xml中引入这个依赖,tomcat容器启动没问题,但你访问的时候就出现了上面的错误。这就是jar包冲突了,那么怎么冲突的呢?首先,我们在pom.xml中引入了servlet-api这个依赖,但是我们使用了tomcat7插件,我们看
转载
2024-06-20 10:30:41
137阅读
maven jar包冲突是个老生常谈的话题了。常见的主要问题有两种: 1)maven version不同: version不同时,maven会自动版本检查产生的不确定性。比如我有一个项目依赖log4j,zookeeper,那么可能配置两个denpendency。但问题是zookeeper里面可能也依赖了log4j,但是依赖的版本我是不知道的。可能和我配置的一致,也可能不一样。此
转载
2024-03-28 13:01:46
71阅读
前言写这篇文章的初衷是因为今天在使用mvn dependency:tree命令时,突然想起一年前面试阿里的一道面试题。面试题是说假设线上发生JAR包冲突,应该怎么排查?我那时候的回答是IDEA有个Maven Helper的插件,可以帮忙分析依赖冲突,然后还有一种办法是如果一个类import的时候提示两个地方可导入,那就说明有冲突。现在回头想想确实太不专业了,以下是一次JAR包冲突的一个比较正规的流
转载
2024-03-18 08:06:38
48阅读
本地调试报错: [java] view plain copy print? SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/E:/repository/org/slf4j/s
原创
2021-09-06 10:03:27
822阅读
maven中如果在配置中加入了scope标签并且是compile范围的可能会导致jar包冲突比如servlet-api在tomcat服务器中有配置的例子: <dependency> <groupId>mysql</groupId>
原创
2022-03-01 14:04:16
263阅读
1.pom部分配置如下 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.1</version>
原创
2023-04-14 13:54:26
22阅读
maven中如果在配置中加入了scope标签并且是compile范围的可能会导致jar包冲突比如servlet-api在tomcat服务器中有配置的例子: <dependency> <groupId>mysql</groupId> <artifactId>mysql-conne...
原创
2021-08-07 10:08:33
340阅读
前言大家在项目中肯定有碰到过Maven的Jar包冲突问题,经常出现的场景为:本地运行报NoSuchMethodError,ClassNotFoundException。明明在依赖里有这个Jar包啊。怎么运行不了!?项目中明明定义着某个jar包版本为2.0.2,怎么打包之后变成2.5.0了!?A项目引xxx.jar包运行好好的,B项目同样引入xxx.jar后,运行报错了。。是B项目有问题,还是xxx
转载
2024-08-29 16:59:07
172阅读
背景:使用maven很方便,但是引入冲突也很常见。后果很严重,各种不明实体找不到,所以需要对jar包的依赖有一个清晰的认识。查看冲突参考:用dependency:tree查看maven引入jar包的传递依赖maven 树 查看依赖查看jar包的传递依赖,最方便的方式就是打依赖树,使用mvn dependency:tree -Dverbose改命令在执行时候回重新build一次 dependenc
转载
2024-04-02 14:55:33
203阅读
解决jar包冲突的方式一 第一声明优先原则:哪个jar包的坐标在靠上的位置,这个jar包就是先声明的。 先
原创
2022-08-17 10:18:30
174阅读
的解决办法,maven内置了三个基本的原则原则一:最短路径优先原则二:第一声明者优先原则三:覆盖优先下面的三张图,最终选择的都是高版本的jar包这是maven自动做的依赖解决,也就是.
原创
2022-01-12 14:58:09
960阅读
# Java JAR包冲突(非Maven)及其解决方法
在Java开发中,经常会遇到JAR包冲突的问题。冲突通常是由于项目中引入了不同版本的同一库,导致运行时出现问题。本文将通过示例来介绍如何识别和解决这些冲突,尤其是在不使用Maven等构建工具的情况下。
## 认识JAR包冲突
JAR(Java Archive)文件是将多个Java类和相关资源打包成一个文件的格式。在没有Maven等依赖管
文章目录一、基本概念二、解决 jar 包冲突方式:第一声明者优先原则三、解决 jar 包冲突方式:路径近者优先原则四、解决 jar 包冲突方式:排除依赖(推荐使用)五、锁定版本 一、基本概念(1)依赖传递 可以发现添加 springmvc 的核心依赖坐标之后,会发现出现除了 spring-webmvc 以外的其他 jar。 因为我们的项目依赖 spring-webmv.jar,而spring-w
转载
2023-12-26 13:14:22
264阅读
IntelliJ IDEA 自带的Diagrams 去查看jar包冲突相当费劲 ~ ,安装个插件即可快速解决该问题
原创
2023-05-06 15:00:21
1010阅读
1.安装maven helperfile -> setting -> plugins -> maven helper下载插件并安装。2
原创
2023-01-10 11:07:20
674阅读
首先点击右侧的MavenProjects打开以下界面: 这个界面是maven的命令界面: 点击这个图标会进入如下界面: 左上角可以缩放,点击线可以取消冲突依赖,红色线为冲突依赖。 上图为无依赖冲突的smm框架。 ...
转载
2020-11-16 08:20:00
365阅读
2评论
事情是这样的,这个星期把尘封已久的台式机重新装起来用了(为什么要重新装了,主要有两个原因:一是自己房间太小了,台式机太大了,尤其是屏幕27寸;二是去年电脑除了点问题,开机之后屏幕老是不亮,VGA灯常亮),这段时间用笔记本觉得跑得比较慢就突发奇想把尘封的台式机再装起来用,发现竟然可以用了。背景交代清楚,开始说正事。开机之后第一件事就去开idea,真手贱!跑项目的时候觉得要重新配置一下maven,因为
转载
2024-10-13 12:38:11
70阅读
1、maven基础maven是一个项目管理工具。依赖管理maven对项目中的jar包的管理过程,传统工程我们直接把jarb包放置在项目中。maven工程真正的jarb包放置在仓库中,项目中只用放置jar包的坐标。仓库的种类本地仓库:在我们本机上的maven仓库。远程仓库【私服】:一般是公司的仓库。仓库之间的关系当我们启动一个maven工程时,maven工程会通过pom文件中jar包的坐标去本地仓库
在一次项目启动中,遇到了一个报错"java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log"简单Google一下,是jar包冲突的问题。按照网上的思路,首先查看mvn中冲突的包使用命令:mvn dependency:tree -Dverbose | grep "omitted for conflict with”通常上
转载
2024-05-02 22:32:58
48阅读