gpt4 book ai didi

java - Tomcat 7 的 Spring 配置类处理器错误

转载 作者:行者123 更新时间:2023-11-30 11:10:34 26 4
gpt4 key购买 nike

我正在尝试设置 tomcat 7.0.57(JDK 1.7.0_71) 以在 Eclipse Luna 中运行 Web 应用程序。该 Web 应用程序涉及基于 Spring 注释的 bean 配置。我已将 webapp 添加到服务器,并尝试发布服务器,但出现此错误:

0    [localhost-startStop-1] ERROR org.springframework.web.context.ContextLoader  - Context initialization failed
java.lang.IllegalStateException: Cannot load configuration class: com.zzz.BeanConfigForDev
at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:371)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanFactory(ConfigurationClassPostProcessor.java:246)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:687)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:626)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:454)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4994)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5492)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1859)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: class com.zzz.BeanConfigForDev$$EnhancerByCGLIB$$216e920d is not an enhanced class
at net.sf.cglib.proxy.Enhancer.setCallbacksHelper(Enhancer.java:621)
at net.sf.cglib.proxy.Enhancer.registerStaticCallbacks(Enhancer.java:594)
at org.springframework.context.annotation.ConfigurationClassEnhancer.createClass(ConfigurationClassEnhancer.java:151)
at org.springframework.context.annotation.ConfigurationClassEnhancer.enhance(ConfigurationClassEnhancer.java:108)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:361)

代码中使用的注释没有问题,因为具有类似 jar 集的相同设置在其他系统中也能正常工作。根据我的初步分析,我怀疑问题出在所使用的 cglib 和 asm 版本上。已尝试使用这些 jar 的最新版本以及 cglib_nodep 但遇到同样的问题。这是我的类路径配置。

http://i.stack.imgur.com/oHvOT.png

在调试时,我看到 cglib.Enhancer 在配置代理上运行时由于 NoSuchMethodException 而失败。关于此特定情况下 NoSuchMethodException 的可能原因的任何想法?

最佳答案

我不知道是什么导致了这个问题,但是我通过切换到 Tomcat 7.0.29 解决了这个问题

关于java - Tomcat 7 的 Spring 配置类处理器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27656714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com