Spring无法加载基于java的配置

时间:2013-04-15 08:11:19

标签: spring solr

我想使用Spring作为Ioc创建一个Solr数据导入处理程序。当我尝试从Solr调用处理程序时,我得到了以下错误

Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to load bean class: com.yoox.shanghai.AppConfig; nested exception is java.io.FileNotFoundException: class path resource **[com/my/app/AppConfig.class]** cannot be opened because it does not exist

请注意邮件中打印的路径。看起来它正在使用相对路径。我不知道是什么原因。

我正在使用Java based container configuration,编译通过。我的代码适用于JUnit4。

appCtx = new AnnotationConfigApplicationContext(AppConfig.class);

2 个答案:

答案 0 :(得分:0)

您确定要正确导入AppConfig吗?否则,请确保已真正部署该类(检查部署目录)。

答案 1 :(得分:0)

我google了很长时间,但是找不到任何关于spring如何解析类路径的答案。但是我发现有人试图明确设置类加载器,所以我试过了。

appCtx = new AnnotationConfigApplicationContext();
appCtx.setClassLoader(this.getClass().getClassLoader());
appCtx.register(AppConfig.class);
appCtx.refresh();

它有效:D

但是我对这个答案不满意。我希望有人可以指出我的类加载逻辑有什么问题。