我正在尝试在STS内部定义的Tomcat服务器中使用加载时间。
我已将加载时weaver添加到应用程序上下文中:
上下文:负荷 - 时间 - 韦弗/>
(我也试过了)
context:load-time-weaver weaver-class =“org.springframework.instrument.classloading.ReflectiveLoadTimeWeaver”/>
该项目包含所需的jar(spring-aop.jar,aspectjweaver.jar),并且乐器jar已被复制到tomcat / lib(spring-instrument-tomcat-4.0.2.RELEASE.jar)。
Servers项目中的context.xml包含:
<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>
(我已尝试过tomcat / conf / context.xml以及META-INF / context.xml)
当我启动服务器时,我收到错误“java.lang.IllegalStateException:No LoadTimeWeaver available”
单步调试AspectJWeavingEnabler:enableAspectJWeaving,抛出异常的方法,bean类加载器已正确实例化为TomcatInstrumentableClassLoader,但LoadTimeWeaver为null。我相信LoadTimeWeaver应该由应用程序上下文“context:load-time-weaver”注入。实例化的TomcatInstrumentableClassLoader似乎表明spring-instrument-tomcat-4.0.2.RELEASE.jar和context.xml中的loaderClass条目都已正确选取。