Java Can';t将组件自动关联到实用程序类中
我在将组件自动连接到实用程序类时遇到问题。实用程序类最初有静态方法,但后来我只是让它们成为实例方法 我用@Component在放入的类中定义了实用程序类Java Can';t将组件自动关联到实用程序类中,java,spring,groovy,Java,Spring,Groovy,我在将组件自动连接到实用程序类时遇到问题。实用程序类最初有静态方法,但后来我只是让它们成为实例方法 我用@Component在放入的类中定义了实用程序类 class MyUtilityClass { @Autowired ExistingComponent existingComponent ... } 实用程序类所在的包位于@ComponentScan的指定父目录下,其中value=“top-level directory”还包含所有其他自动连线组件的包 为了让实用程序类运行,我必须将现有组
class MyUtilityClass {
@Autowired
ExistingComponent existingComponent
...
}
实用程序类所在的包位于@ComponentScan的指定父目录下,其中value=“top-level directory”还包含所有其他自动连线组件的包
为了让实用程序类运行,我必须将现有组件传递给实用程序类的构造函数
使用弹簧4.1.6
这可能是一些基本的东西,但不是点击。我错过了什么
谢谢
更新1
调用实用程序类的类如下所示:
class UsingClass {
@Autowired
MyUtilityClass myUtilityClass
...
def method1() {
String variable1 = "some data"
myUtilityClass.utilityMethod(variable1)
...
}
}
最初,我将内部实用程序方法设置为静态,并尝试在不自动连接的情况下使用实用程序类。您的beans XML配置文件中是否有此功能
<context:component-scan base-package="com.your.package" />
基本包指示组件的存储位置
这允许Spring扫描包,以便它可以找到用@组件注释的bean
这将得到更深入的解释。显示在MyUtilityClass
上调用方法的类。同一个包中的其他类如何。他们是否支持自动连线将调用类编辑到问题中。同一“util”包中的类不进行任何自动连线。先检查一下!不使用XML。使用@ComponentScan注释,将value属性设置为“util”目录上方和其他组件目录上方的目录。即,如果_value=“com.my.top-level dir”,则自动连接的包位于包“com.my.top-level dir.pkg1”、“com.my.top-level dir.pkg2”等中。。。实用程序类位于包“com.my.top-level dir.util”中。是的,我不确定你是不是完全由注释驱动的。您至少有注释驱动的标记来运行注释,对吗?我相信@Autowired至少需要这么多。今天我将对此进行更多的研究,并报告任何发现。谢谢你的更新!