java.lang.IllegalAccessError

本文介绍了一个关于Hibernate和EhCache版本不兼容导致的问题及其解决方案。在使用Hibernate进行测试时遇到非法访问错误,原因是EhCache的一个已知bug。解决办法是将EhCache升级到1.2以上版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在测试hibernate是,当程序运行到如下的语句时:

None.gif Configuration configuration  =   new  Configuration();
出现了如下的错误,
 1None.gifjava.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager.<init>()V from class org.hibernate.cache.EhCacheProvider
 2None.gif    at org.hibernate.cache.EhCacheProvider.start(EhCacheProvider.java:124)
 3None.gif    at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:180)
 4None.gif    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1213)
 5None.gif    at no.brodwall.demo.domain.persist.ProductDAOTest.setUp(ProductDAOTest.java:45)
 6None.gif    at junit.framework.TestCase.runBare(TestCase.java:125)
 7None.gif    at junit.framework.TestResult$1.protect(TestResult.java:106)
 8None.gif    at junit.framework.TestResult.runProtected(TestResult.java:124)
 9None.gif    at junit.framework.TestResult.run(TestResult.java:109)
10None.gif    at junit.framework.TestCase.run(TestCase.java:118)
11None.gif    at junit.framework.TestSuite.runTest(TestSuite.java:208)
12None.gif    at junit.framework.TestSuite.run(TestSuite.java:203)
13None.gif    at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
14None.gif    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
15None.gif    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
16None.gif    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
17None.gif    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
18None.gif    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
在网上找呀找,终于找到了,是ehcache的一个bug引起的,把ehcache升级到1.2以上的版本就行了,:0)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值