2015-01-10 2 views
-1

은 안녕 모두, 난 내 스프링 프로젝트에 EHCache는 포함하려고하고에 의해 발생 : java.lang.NoClassDefFoundError가 : 조직/스프링 프레임 워크/캐시/지원/AbstractCacheManager는

다음

Caused by: java.lang.NoClassDefFoundError: org/springframework/cache/support/AbstractCacheManager at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1191) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1669) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1191) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1669) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547) at org.springframework.util.ClassUtils.forName(ClassUtils.java:257) at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:408) at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1271) at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1242) ... 37 more Caused by: java.lang.ClassNotFoundException: org.springframework.cache.support.AbstractCacheManager at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547) ... 65 more

내으로 Ehcache 인이 오류가 콩 여기

<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"> 
    <property name="configLocation" value="classpath:config/ehcache.xml"/> 
    <property name="shared" value="true"/> 
    </bean> 

    <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"> 
    <property name="cacheManager" ref="ehcache"/> 
    </bean> 

것은이 경우에 값을 가질 수있는 내 depencies입니다

<dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-webmvc</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context-support</artifactId> 
     <version>3.2.13.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>net.sf.ehcache</groupId> 
     <artifactId>ehcache</artifactId> 
     <version>2.7.4</version> 
    </dependency> 

내 의존성/빈 선언에 어떤 문제가 있습니까? 클래스 AbstractCacheManager를 찾았지만 이는 비 스프링 메이븐 종속성에 있습니다.

+0

중으로 만 사용할 수

메이븐 중앙에서의 첫 등장은 버전 3.1.0입니다 스프링 3.1과 당신은 스프링 버전 (3.0과 3.2)을 혼합하고있다. 3.2.13.RELEASE로 모든 버전을 옮기는 것이 좋습니다. 믹싱 대신에 (항상 아주 나쁜 생각이고 문제를 디버그하기가 어렵습니다). –

답변

0

프로젝트 속성> 배포 어셈블리를 열고 maven 종속성을 추가하십시오.

0

AbstractCacheManager 클래스는 3.0.5 릴리스 스프링의 일부가 아닙니다.

  • Maven central search
    • spring documentation에 의해 확인된다 : 우선 캐시를 들어

      Since version 3.1, Spring Framework provides support for transparently adding caching into an existing Spring application....