如何使用@ComponentScan 注解扫描多个路径?
我正在使用 Spring 3.1 并使用 @Configuration
和 @ComponentScan
属性引导应用程序.
I'm using Spring 3.1 and bootstrapping an application using the @Configuration
and @ComponentScan
attributes.
真正的开始是用
new AnnotationConfigApplicationContext(MyRootConfigurationClass.class);
这个配置类被注释了
@Configuration
@ComponentScan("com.my.package")
public class MyRootConfigurationClass
这很好用.但是我想更具体地了解我扫描的包,所以我尝试了.
and this works fine. However I'd like to be more specific about the packages I scan so I tried.
@Configuration
@ComponentScan("com.my.package.first,com.my.package.second")
public class MyRootConfigurationClass
但是这失败了,错误提示我找不到使用 @Component
注释指定的组件.
However this fails with errors telling me it can't find components specified using the @Component
annotation.
我所追求的正确方法是什么?
What is the correct way to do what I'm after?
谢谢
推荐答案
@ComponentScan 使用字符串数组,像这样:
@ComponentScan uses string array, like this:
@ComponentScan({"com.my.package.first","com.my.package.second"})
当你只在一个字符串中提供多个包名时,Spring会将其解释为一个包名,因此无法找到它.
When you provide multiple package names in only one string, Spring interprets this as one package name, and thus can't find it.
相关文章