`

jedis common 包冲突的问题

 
阅读更多

目前现状,jedis版本是2.4.2,没有引入common包

报错:

信息: Illegal access: this web application instance has been stopped already.  Could not load redis.clients.jedis.exceptions.JedisDataException.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1813)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1771)
	at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:63)
	at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:819)
	at org.apache.commons.pool2.impl.GenericObjectPool.ensureMinIdle(GenericObjectPool.java:863)
	at org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.run(BaseGenericObjectPool.java:1001)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)

Exception in thread "commons-pool-EvictionTimer" java.lang.NoClassDefFoundError: redis/clients/jedis/exceptions/JedisDataException
	at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:63)
	at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:819)
	at org.apache.commons.pool2.impl.GenericObjectPool.ensureMinIdle(GenericObjectPool.java:863)
	at org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.run(BaseGenericObjectPool.java:1001)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.ClassNotFoundException: redis.clients.jedis.exceptions.JedisDataException
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1928)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1771)
	... 6 more

 查了半天,说是jar包冲突

解决办法:

将jedisjar包改成2.9.0

加入如下代码:

<dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>${jedis.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>commons-pool2</artifactId>
					<groupId>org.apache.commons</groupId>
				</exclusion>
			</exclusions>
		</dependency>
                 <dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-pool2</artifactId>
			<version>2.4.2</version>
		</dependency>

分析原因:

jedis包中引用了common pool2的jar包

分享到:
评论

相关推荐

    jedis相关jar包

    标题中的“jedis相关jar包”指的是用于操作Redis数据库的Java客户端库Jedis的相关依赖文件。Jedis是一个高效、轻量级的Java客户端,它使得Java开发者能够方便地与Redis进行交互,执行各种数据操作。 描述中提到了两...

    jedis依赖jar包

    在使用Jedis 2.7.0之前,确保你的Redis服务器版本与其兼容,以避免潜在的问题。 **安装与依赖** 要在项目中使用Jedis,首先需要将`jedis-2.7.0.jar`添加到你的类路径中。如果你使用Maven,可以在`pom.xml`文件中...

    Jedis-Common-Pool

    标题中的“Jedis-Common-Pool”指的是Jedis,一个流行的Java客户端库,用于与Redis内存数据存储系统交互,以及Apache Commons Pool 2,这是一个对象池实现,Jedis使用它来管理Redis连接的生命周期,提高性能和资源...

    Jedis-2.9.0和commons-pool2-2.4.2架包

    Jedis是Java社区中最流行的Redis客户端,它提供了丰富的API用于操作Redis服务器。本文将深入探讨Jedis-2.9.0版本以及与其配合使用的Apache Commons Pool 2.4.2库。 **Jedis 2.9.0** Jedis是Java语言的Redis客户端...

    jedis依赖包.zip

    "jedis依赖包.zip"是针对Java开发人员的一个资源包,包含了与Jedis库相关的五个核心依赖Jar文件,这些文件使得Java应用程序能够与Redis服务器进行交互。 1. **Jedis简介**: Jedis是Java语言编写的Redis客户端,...

    jedis5.1.0.jar

    jedis5.1.0.jar

    jedis开发使用包

    在你的"jedis开发使用包"中,包含了两个重要的Java库文件: 1. **commons-pool-1.6.jar**:这是Apache Commons Pool库的1.6版本,它是一个通用的对象池服务。在Jedis中,它用于管理Redis连接的池化,避免频繁地创建...

    redis jedis jar包

    标题中的“redis jedis jar包”指的是使用Jedis库的Java开发者需要的二进制库文件,即jar包。这个2.7.0版本的Jedis是经过测试并且可用的,适用于那些寻求稳定版本的开发者。 Jedis的功能包括但不限于以下几点: 1....

    Jedis-java最新jar包

    Jedis-java最新jar包

    Jedis所需jar包

    Redis是一款高性能的键值对数据库,常用于缓存、消息队列等场景。...记得根据实际需求选择合适的Jedis版本,以兼容你的Redis服务器和避免已知问题。同时,注意及时更新Jedis,以便获取最新的功能和修复的bug。

    jedis jar包

    在使用Jedis之前,首先需要在项目中引入Jedis的jar包。可以通过Maven或Gradle等构建工具添加依赖,或者手动下载jar包并将其添加到项目的类路径中。例如,如果你使用Maven,可以在pom.xml文件中添加以下依赖: ```...

    Jedis3.0相关jar包

    Jedis3.0.0相关jar包 commons-pool2-2.4.2.jar jedis-3.0.0.jar jedis-3.0.0-javadoc.jar jedis-3.0.0-sources.jar

    jedis不同版本的架包

    2.6.1还可能修复了之前版本的一些已知问题,提升了整体的可靠性和用户体验。 再者,Jedis 2.7.2是一个更成熟的版本,它进一步增强了Jedis的功能和性能。例如,可能引入了更好的连接池管理策略,如Lettuce连接池的...

    (window)Redis安装包,Redis桌面Manager,Jedis驱动包

    Redis是一款开源的、高...3. Jedis驱动包,Java开发人员用来与Redis服务器进行交互的客户端库。 这些组件共同构成了在Windows环境中进行Redis开发和管理的基础,无论你是初学者还是经验丰富的开发者,都能从中受益。

    各种版本的redis+Jedis驱动包

    接下来,我们讨论Jedis驱动包: 4. **Jedis**:Jedis是Java语言的Redis客户端库,它提供了丰富的API,使Java开发者能够方便地与Redis进行交互。Jedis支持各种Redis命令,包括数据类型操作、事务处理、发布/订阅、...

    jedis Redis的java客户端的工具包

    分享一下Redis的JAVA客户端,Jedis工具包

    Redis Java客户端Jedis 2.9.0 jar包(含common-pool2)

    此Jar包为Jedis 2.9.0版(2016年7月22日发布) 支持Redis 3.0 (亲测有效) 使用方法: import redis.clients.jedis.Jedis; Jedis jedis = new Jedis("localhost"); jedis.set("foo", "bar"); String value = jedis...

    jedis.jar包

    7. **错误处理**:在Jedis 3.0中,错误处理更加明确和一致,有助于开发者快速定位和解决问题。 使用这个jar包,开发者可以通过以下步骤开始使用Jedis: 1. 添加依赖:将jedis.jar添加到项目的类路径或Maven/Gradle...

    jedis 和 common-pool

    标题中的“jedis”和“common-pool”指的是在Java开发中常用的两个库,它们分别是Jedis和Apache Commons Pool。Jedis是专为处理Redis数据存储服务而设计的一个Java客户端,而Apache Commons Pool则是一个通用的对象...

    jedis所需要jar包.zip

    这个压缩包“jedis所需要jar包.zip”包含了两个重要的jar文件:`commons-pool2-2.4.2.jar`和`jedis-2.7.2.jar`,它们是使用Jedis进行Redis操作的基础。 1. **Jedis-2.7.2.jar**: Jedis是Java编写的Redis客户端,...

Global site tag (gtag.js) - Google Analytics