当前位置:网站首页>Record a jar package conflict resolution process
Record a jar package conflict resolution process
2022-07-03 16:06:00 【Longchi Xiaosheng】
Problem description :
I'm doing a function , Need to use org.apache.curator Under the curator-framework jar package , An error is reported during program operation , Compare other items 、 Looking up the data, we found that curator-framework Package version is too high , No corresponding method was found , After excluding the package of higher version , Start up project error , According to the startup log, it is found that com.google.guva.guava Of jar Packet collision , Reintroduce guava Package problem solving .
1、 Program running error ,jar Packet collision
Error message :
java.lang.NoSuchMethodError: org.apache.curator.framework.api.CreateBuilder.creatingParentContainersIfNeeded()Lorg/apache/curator/framework/api/ProtectACLCreateModePathAndBytesable;
Problem investigation and solution :
To find the way :org.apache.curator.framework.api.CreateBuilder.creatingParentContainersIfNeeded

There is no way creatingParentContainersIfNeeded, And found that curator There are two versions under the package ,4.0.1 and 2.9.1, Then I compared the previous projects to curator The version is 2.9.1, Sure is Package version conflicts , Should introduce curator-framework 2.9.1 Version package of .

lookup curator-framework Quote trees ,idea Of terminal Carry out orders
mvn dependency:tree -Dverbose -Dincludes=org.apache.curator:curator-framework
maven Rely on trees :

Reference found 4.0.1 Version of pom And exclude :

After exclusion :

2、 Project start error ,jar Packet collision :
After the above problems are solved , Start up project error :
The main idea of the error message description is not found jar Bag sameThreadExecutor Method , again jar The conflict ,23.0 Version of guava Package does not have this method .
An attempt was made to call the method com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor()Lcom/google/common/util/concurrent/ListeningExecutorService; but it does not exist. Its class, com.google.common.util.concurrent.MoreExecutors, is available from the following locations:
jar:file:/C:/Users/Administrator/.m2/repository/com/google/guava/guava/23.0/guava-23.0.jar!/com/google/common/util/concurrent/MoreExecutors.class
It was loaded from the following location:
file:/C:/Users/Administrator/.m2/repository/com/google/guava/guava/23.0/guava-23.0.jar
Action:
Correct the classpath of your application so that it contains a single, compatible version of com.google.common.util.concurrent.MoreExecutors
Compare other items ,guava Package introduces 20.0 Version of .
stay pom To reintroduce pom rely on , Cover 23.0 Version of the package , The project started successfully :
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>20.0</version>
</dependency>maven View dependent commands :
View specified jar The dependency tree of the package :
mvn dependency:tree -Dverbose -Dincludes=org.apache.curator:curator-framework
View all of the items jar The dependency tree of the package :
mvn dependency:tree
View all of the items jar The dependency tree of the package , And output to the specified file :
mvn dependency:tree>D:\maven.txt
边栏推荐
- MB10M-ASEMI整流桥MB10M
- Under VC, Unicode and ANSI are converted to each other, cstringw and std:: string are converted to each other
- 用通达信炒股开户安全吗?
- A Fei's expectation
- Rk3399 platform development series explanation (WiFi) 5.54. What is WiFi wireless LAN
- 远程文件包含实操
- Driver and application communication
- Nine ways to define methods in scala- Nine ways to define a method in Scala?
- App mobile terminal test [3] ADB command
- [redis foundation] understand redis master-slave architecture, sentinel mode and cluster together (Demo detailed explanation)
猜你喜欢

近视:摘镜or配镜?这些问题必须先了解清楚

Srs4.0+obs studio+vlc3 (environment construction and basic use demonstration)

【Proteus仿真】74HC595+74LS154驱动显示16X16点阵

MB10M-ASEMI整流桥MB10M
![[200 opencv routines] 217 Mouse interaction to obtain polygon area (ROI)](/img/04/460734209ec315c5c02cb3fae4bf0e.png)
[200 opencv routines] 217 Mouse interaction to obtain polygon area (ROI)

Microservice - declarative interface call openfeign
![App mobile terminal test [4] APK operation](/img/f1/4bff6e66b77d0f867bf7237019e982.png)
App mobile terminal test [4] APK operation

Low level version of drawing interface (explain each step in detail)

记一次jar包冲突解决过程

Introduction series of software reverse cracking (1) - common configurations and function windows of xdbg32/64
随机推荐
初试scikit-learn库
From the 18th line to the first line, the new story of the network security industry
工资3000,靠“视频剪辑”月入40000:会赚钱的人,从不靠拼命!
Client does not support authentication protocol requested by server; consider upgrading MySQL client
Get the executable path through the process PID (queryfullprocessimagename)
《天天数学》连载56:二月二十五日
Microservice - fuse hystrix
Detailed explanation of four modes of distributed transaction (Seata)
Jmeter线程组功能介绍
[redis foundation] understand redis master-slave architecture, sentinel mode and cluster together (Demo detailed explanation)
UnityShader——MaterialCapture材质捕捉效果 (翡翠斧头)
Getting started with Message Oriented Middleware
Redis高可用与持久化
June to - -------
Wechat payment -jsapi: code implementation (payment asynchronous callback, Chinese parameter solution)
App mobile terminal test [4] APK operation
Redis在Windows以及Linux系统下的安装
First!! Is lancet hungry? Official documents
Three dimensional reconstruction of deep learning
Shell script import and export data