我是 Spring 编程新手,目前正在努力解决 Spring 3.1 的基于 Java 的配置”,我创建了以下配置类
@Configuration
@ImportResource("classpath:/resources/jdbc.properties")
public class AppConfig {
@Autowired
Environment env;
private @Value("${jdbc.url}")
String url;
private @Value("${jdbc.username}")
String username;
private @Value("${jdbc.password}")
String password;
@Bean
public DataSource dataSource() {
System.out.println("Creating data Source.");
return new DriverManagerDataSource(url, username, password);
}
@Bean
public SessionFactory sessionFactory () throws Exception {
return new AnnotationSessionFactoryBuilder().setDataSource(dataSource()).setPackagesToScan("com.argusoft.loginmodule.domain").buildSessionFactory();
}
}
现在,当我尝试运行该项目时,出现以下错误。
输出
SEVERE: Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: java.lang.IllegalArgumentException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/springframework/core/env/EnvironmentCapable
卡住了,解决不了......我正在关注Spring Source Blog .
还请推荐一些好的教程,其中通过易于理解的示例解释了 Spring 最新的基于 Java 的配置...
提前致谢,
最佳答案
从异常的角度来看:
java.lang.NoClassDefFoundError: org/springframework/core/env/EnvironmentCapable
这个问题等于问题:Spring class EnvironmentCapable
所以正确的答案可能是:
I think that need use version 3.1.0 - in package org.springframework.core-3.1.0.M2.jar this class presents.
由用户810430在这里给出:original answer .
关于Spring 的基于 Java 的配置不适合我,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8006055/