Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t将组件自动关联到实用程序类中_Java_Spring_Groovy - Fatal编程技术网

Java Can';t将组件自动关联到实用程序类中

Java Can';t将组件自动关联到实用程序类中,java,spring,groovy,Java,Spring,Groovy,我在将组件自动连接到实用程序类时遇到问题。实用程序类最初有静态方法,但后来我只是让它们成为实例方法 我用@Component在放入的类中定义了实用程序类 class MyUtilityClass { @Autowired ExistingComponent existingComponent ... } 实用程序类所在的包位于@ComponentScan的指定父目录下,其中value=“top-level directory”还包含所有其他自动连线组件的包 为了让实用程序类运行,我必须将现有组

我在将组件自动连接到实用程序类时遇到问题。实用程序类最初有静态方法,但后来我只是让它们成为实例方法

我用@Component在放入的类中定义了实用程序类

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至少需要这么多。今天我将对此进行更多的研究,并报告任何发现。谢谢你的更新!