无法将组件自动装配到实用程序类中

时间:2016-04-25 18:15:12

标签: java spring groovy

我遇到了将组件自动装配到实用程序类中的问题。实用程序类最初有静态方法,但后来我只是将它们作为实例方法。

我使用 @Component 并在放入

的类中定义了实用程序类
class MyUtilityClass {
@Autowired
ExistingComponent existingComponent
...
}

实用程序类所在的包位于 @ComponentScan 的指定父目录下,其中 value =“top-level-directory”也包含for的包所有其他自动装配组件。

要使实用程序类运行,我必须将 ExistingComponent 传递给实用程序类的构造函数。

使用Spring 4.1.6。

这可能是基本的,但不是点击。我在这里缺少什么?

感谢。

更新1

调用实用程序类的类如下所示:

class UsingClass {
@Autowired 
MyUtilityClass myUtilityClass
...
    def method1() {
    String variable1 = "some data"
    myUtilityClass.utilityMethod(variable1)
    ...
    }
}

最初我将内部实用程序方法设置为静态,并尝试使用实用程序类而不自动装配它。

1 个答案:

答案 0 :(得分:1)

你的bean XML配置文件中有没有这个?

<context:component-scan base-package="com.your.package" />

base-package 表示存储组件的位置。

这允许Spring扫描包,以便它可以找到用@Component注释的bean。

更深入地解释了这一点here