Memcached之执行报BasePoolableObjectFactory类找不到异常
2016-03-11 00:23
489 查看
package cache; import com.danga.MemCached.MemCachedClient; import com.danga.MemCached.SockIOPool; public class CacheTest { public static void main(String[] args){ /** * 初始化SockIOPool,管理Memcached的连接池 */ String[] servers = {"localhost:11211"}; SockIOPool pool = SockIOPool.getInstance(); pool.setServers(servers); pool.setFailover(true); pool.setInitConn(10); pool.setMinConn(5); pool.setMaxConn(250); pool.setMaintSleep(30); pool.setNagle(false); pool.setSocketTO(3000); pool.setAliveCheck(true); pool.initialize(); /** * 建立Memcached客户端程序 */ MemCachedClient memCachedClient = new MemCachedClient(); System.out.println("SET: " + memCachedClient.set("key1", "value1")); System.out.println("SET: " + memCachedClient.set("key2", "value2")); System.out.println("SET: " + memCachedClient.set("key3", "value3")); System.out.println("GET: " + memCachedClient.get("key1")); } }
在执行memcached测试程序时,控制台报错:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/pool/BasePoolableObjectFactory at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:621) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$000(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:621) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$000(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at com.danga.MemCached.SockIOPool.getInstance(Unknown Source) at cache.CacheTest.main(CacheTest.java:12) Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool.BasePoolableObjectFactory at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) ... 26 more
解决办法:
少commons-pool.jar包,导入某个版本的commons-pool包即可解决
相关文章推荐
- PHP+shell脚本操作Memcached和Apache Status的实例分享
- 4. PHP 操作 memcache(1)
- 【转】linux下memcached安装以及启动
- JAVA客户端调用memcached
- 关于redis、memcache、mongoDB 的对比
- memcached安装配置
- Memcached分布式实现
- Nginx + Memcached + Tomcat 集群
- [摘选]memcached全面剖析—— 客户端选择(一致性哈希算法)
- memcached java客户端比较
- Discuz 如何开启 memcache
- Discuz 如何开启 memcache
- Memcached与Magent配置测试
- Memcached故障转移测试之Magent安装
- PHP Memcache
- Memcached多台服务器多节点负载均衡测试
- Memcached单台服务器多节点负载均衡测试
- Memcached常用参数
- Memcached安装使用
- 设计模式之PHP项目应用——单例模式设计Memcache和Redis操作类