我在@Configuration bean中有@Autowired屬性有問題。@Configuration bean中的@Autowired bean屬性爲空
我有類似下面的一個豆:
@Configuration
public class MyConfig {
@Autowired MongoTemplate mongoTemplate;
@Bean
MongoDbMetadataStore indexMetadataStore() {
return new MongoDbMetadataStore(mongoTemplate, "index");
}
}
和... mongoTemplate是在創建indexMetadataStore豆(含調試檢查)空。不幸的是,我不能提供完整的項目結構,它很大(它有~5個XML配置文件和大約20-30個@Configuration bean),我敢打賭,可以有循環引用或其他類型的東西。
但是,這個mongoTemplate bean是先前創建的,並注入到其他bean(也用調試器檢查過),所以此時mongoTemplate完全創建,我無法理解爲什麼它沒有被注入並留空。
任何想法,我應該看看?
包的MyConfig類包含在您的組件掃描? –
您可能需要使用'@ AnnotationDrivenConfig'註釋。沒有看到一個完整的例子,它只是猜測。 http://docs.spring.io/spring-javaconfig/docs/1.0.0.M4/reference/html/ch04s02.html –
註解'@ AnnotationDrivenConfig'似乎在Spring 4中已被刪除。 –