Java 未注入EnumTranslator bean(为null)

Java 未注入EnumTranslator bean(为null),java,spring,spring-data-rest,inject,Java,Spring,Spring Data Rest,Inject,RepositoryRestMvcConfigurationSpring数据REST的类具有方法enumTranslator(): @Bean 公共枚举转换器枚举转换器(){ 返回新的EnumTranslator(resourceDescriptionMessageSourceAccessor()); } (我期望)注册一个“enumTranslator”Bean 但是当我尝试在我的组件中使用它时,它不会被注入,并且总是null: @组件 公共类MyComponent{ 私人最终翻译; 公共M

RepositoryRestMvcConfiguration
Spring数据REST的类具有方法
enumTranslator()

@Bean
公共枚举转换器枚举转换器(){
返回新的EnumTranslator(resourceDescriptionMessageSourceAccessor());
}
(我期望)注册一个“enumTranslator”Bean

但是当我尝试在我的组件中使用它时,它不会被注入,并且总是
null

@组件
公共类MyComponent{
私人最终翻译;
公共MyComponent(EnumTranslator EnumTranslator){
this.enumplator=enumplator;
}
公共方法(){
//枚举转换器->空
}
}
有人能解释一下为什么会发生这种情况,以及如何纠正这种情况吗

更新

我明白了——我试图实现一个不是由Spring管理的类(Spring转换器)


谢谢所有试图帮助我的人

看来
RepositoryRestMvcConfiguration
bean没有加载到Spring容器中。
例如,尝试使用
@import(RepositoryRestMvcConfiguration.class)
配置
类导入它

根据报告:

2.4配置Spring数据REST

您可以将此类导入到现有配置中 使用@Import注释,或者您可以将其子类化并覆盖以下任何内容: configureXXX方法将您自己的配置添加到 Spring数据REST


从Spring4.3开始,如果只有一个构造函数,
@Autowired
是隐式的,不是必需的。对。谢谢不管怎样,我还是保持了详细说明的习惯。我编辑过。我不是指自动连接,而是指导入bean。您可以通过显示所有加载的SpringBean来检查它。谢谢@davidxxx!我已经找到了原因——检查我的更新)你所描述的应该有效,所以你的描述中可能缺少一些东西。您确定是Spring实例化了
MyComponent
?(在调试器中运行它,在构造函数中放置断点,并查看堆栈以查看调用
MyComponent(EnumTranslator)
构造函数的内容)谢谢@slim!我已找到原因-检查我的更新…)