Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 弹簧Tomcat6“;没有可用的LoadTimeWeaver“;代码配置的webapp上下文出错_Spring_Web Applications_Tomcat6_Load Time Weaving - Fatal编程技术网

Spring 弹簧Tomcat6“;没有可用的LoadTimeWeaver“;代码配置的webapp上下文出错

Spring 弹簧Tomcat6“;没有可用的LoadTimeWeaver“;代码配置的webapp上下文出错,spring,web-applications,tomcat6,load-time-weaving,Spring,Web Applications,Tomcat6,Load Time Weaving,我正在开发一个基于Spring3.2.1的webapp(RestFull服务),部署在Tomcat6服务器上。由于Jpa、事务和其他自定义依赖项目的特性,我必须启用loadTime编织。为此,我首先在app/META-INF中配置了我的context.xml,添加: <Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/> 当我

我正在开发一个基于Spring3.2.1的webapp(RestFull服务),部署在Tomcat6服务器上。由于Jpa、事务和其他自定义依赖项目的特性,我必须启用loadTime编织。为此,我首先在app/META-INF中配置了我的context.xml,添加:

<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>
当我尝试启动应用程序时,我收到了错误

ERROR | ContextLoader - Context initialization failed
java.lang.IllegalStateException: No LoadTimeWeaver available
所以一开始我觉得LoadTimeWeaving没有正确配置,但经过一天的尝试,我仍然没有找到解决方案

我能看到的唯一奇怪的东西是那行日志:

Overriding bean definition for bean 'loadTimeWeaver': replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.context.annotation.LoadTimeWeavingConfiguration; factoryMethodName=loadTimeWeaver; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/context/annotation/LoadTimeWeavingConfiguration.class]] with [Generic bean: class [org.springframework.context.weaving.DefaultContextLoadTimeWeaver]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null;
在我看来,两个同名的不同bean(“LoadTimeWeaver”?)是在应用程序上下文中创建的,具有不同的定义,这两个bean在某种程度上是冲突的

weaver是否可能使用context:load-timeweaver创建(它存在于从导入的jar加载的上下文文件中)和在我的新上下文中使用@enableloadtimewaving创建的weaver以某种方式冲突?
有没有办法只使用最后一个来覆盖这两个选项中的一个

你有没有想过?
ERROR | ContextLoader - Context initialization failed
java.lang.IllegalStateException: No LoadTimeWeaver available
Overriding bean definition for bean 'loadTimeWeaver': replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.context.annotation.LoadTimeWeavingConfiguration; factoryMethodName=loadTimeWeaver; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/context/annotation/LoadTimeWeavingConfiguration.class]] with [Generic bean: class [org.springframework.context.weaving.DefaultContextLoadTimeWeaver]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null;