【问题标题】:Spring 4.2.1 is throwing ClassNotFoundException: net.sf.ehcache.CacheManager with Ehcache 3, JSR-107Spring 4.2.1 抛出 ClassNotFoundException: net.sf.ehcache.CacheManager with Ehcache 3, JSR-107
【发布时间】:2016-09-09 18:04:20
【问题描述】:

我正在尝试使用 Jcache -1.0.0 将 EHCache -3.0.2 与 Spring 4.2.1 一起使用,但得到 java.lang.ClassNotFoundException: net.sf.ehcache.CacheManager

我在春天看到EhCacheCacheManager 正在设置 CacheManager 是 net.sf.ehcache.CacheManager 的类型,这在 EHCache 3.0 中不可用。 EHChcache 的类型为 org.ehcache.CacheManager。

似乎如果我使用 Spring,那么我将不得不降低 EHCache 版本,这是我不想要的。

如果有任何解决方法或将不得不等到 Spring 引入它,请建议我。

我关注EHCache3+Spring4.2,但似乎也有同样的问题。

【问题讨论】:

  • 你是如何使用 Jcache 的??我尝试了教程 GIT 链接项目及其与 Ehcache 3.0.0 和 3.0.2 库一起使用。
  • 唯一的区别,我看到我没有使用spring boot。
  • 请添加您的集成示例。您应该使用 JCache 集成,而不是 Ehcache 集成,因为它仅限于版本 2.x

标签: spring ehcache


【解决方案1】:

问题是 spring-context-support 期望 Ehcache 的 CacheManager 在这个类路径上:net.sf.ehcache.CacheManager

但是,在 Ehcache 3 中,CacheManager 类驻留在另一个类路径中:org.ehcache.CacheManager。

所以,基本上 spring-context-support 不支持 Ehcache 3。你必须直接使用 JSR-107 注释,而不是 Spring 提供的注释。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-15
  • 1970-01-01
  • 2018-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多