我正在使用 Spring 3.1。战争不是使用 Maven 构建的。它只是一个正常的构建。我的班级路径中有以下罐子。
antlr-runtime-3.0.1.jar
commons-logging-1.1.1.jar
org.apache.commons.logging.jar
org.springframework.aop-3.1.0.M2.jar
org.springframework.asm-3.1.0.M2.jar
org.springframework.aspects-3.1.0.M2.jar
org.springframework.beans-3.1.0.M2.jar
org.springframework.context-3.1.0.M2.jar
org.springframework.context.support-3.1.0.M2.jar
org.springframework.core-3.1.0.M2.jar
org.springframework.core-3.1.0.RELEASE.jar
org.springframework.core.jar
org.springframework.expression-3.1.0.M2.jar
spring-beans-3.0.5.RELEASE.jar
spring-context-3.0.5.RELEASE.jar
我有以下代码,
@Configuration
public class AppConfig {
@Bean(name="helloBean")
public HelloWorld helloWorld()
{
return new HelloWorldImpl();
}
}
当我运行main
方法时,出现异常
Exception in thread "main" java.lang.IllegalStateException: CGLIB is required to process @Configuration classes. Either add CGLIB to the classpath or remove the following @Configuration bean definitions: [appConfig]
at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:297)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigurationClasses(ConfigurationClassPostProcessor.java:200)
为了克服这个问题,如果我添加cglib-2.1.jar
,我会低于异常..
java.lang.ClassNotFoundException: org.objectweb.asm.Type
为了克服这个问题,如果我添加 ,则会asm3.1.jar
低于异常。
java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.
我怎样才能克服我最初的例外 -CGLIB is required to process @Configuration classes ?