注入映射时发生Spring NullPointerException

注入映射时发生Spring NullPointerException,spring,Spring,我正在尝试向实用类中注入一个映射。我已经创建了一个映射Bean,并且正在使用@Resource注释注入它 @Configuration class MyConfiguration { @Bean Map<String, String> testMap(){ def map = [:] // Using groovy // Putting things into map map } } @Component class M

我正在尝试向实用类中注入一个映射。我已经创建了一个映射Bean,并且正在使用@Resource注释注入它

@Configuration
class MyConfiguration {

   @Bean
   Map<String, String> testMap(){
      def map = [:]  // Using groovy
      // Putting things into map
      map  
   }
}

@Component
class MyUtilityClass {
   @Resource(name="testMap")
   Map<String, String> testMap
}
我在这里注射地图的时候做错了什么吗。不确定为什么会导致NPE

更新- 因此创建了一个类,并将映射添加为该类的属性。并将该类作为Bean注入。它工作正常,可以在类中注入映射

 @Configuration
 class MyConfiguration {

     @Bean
     Testclass testClass(){
        def map = [:]  // Using groovy
        // Putting things into map
        new TestClass(testMap: map)
     }
 }



class TestClass {
     Map<String, String> testMap
}
@配置
类配置{
@豆子
Testclass Testclass(){
defmap=[:]//使用groovy
//把东西放到地图上
新的TestClass(testMap:map)
}
}
类TestClass{
地图测试地图
}

因此,问题似乎出现在正在注入的映射中。

我怀疑
@Resource
是否与
@Qualifier
配合良好?在过去,它通常是选择
@Resource(name=“xxx”)
@Autowire+@Qualifier
的比较,我尝试了@Resource(name=“testMap”),但得到了相同的错误。
MyConfiguration
真的有效吗?问题在于testMap方法。只需在那里放置一个brakpoint并在调试模式下运行应用程序…@Adrian-是的,因为它有正确注入的其他bean。我怀疑
@Resource
是否能与
@Qualifier
配合使用?在过去,它通常是选择
@Resource(name=“xxx”)
@Autowire+@Qualifier
的比较,我尝试了@Resource(name=“testMap”),但得到了相同的错误。
MyConfiguration
真的有效吗?问题在于testMap方法。只需在那里放置一个brakpoint并在调试模式下运行应用程序…@Adrian-是的,因为它有其他正确注入的bean。
 @Configuration
 class MyConfiguration {

     @Bean
     Testclass testClass(){
        def map = [:]  // Using groovy
        // Putting things into map
        new TestClass(testMap: map)
     }
 }



class TestClass {
     Map<String, String> testMap
}