如果我只写
@ComponentScan
Spring将扫描当前包及以下。
如果我写
@ComponentScan(basePackages = {"my.package.com"})
我可以隐式指定当前包以及一些显式包吗?
像这样的东西
@ComponentScan(basePackages = {"", "my.package.com"})
答案 0 :(得分:1)
JavaDoc说:
如果未定义特定包,则会从中进行扫描 声明此批注的类的包。
因此,如果您声明要扫描的任何包,则将覆盖默认行为。 但是,我无法看到为什么需要对当前包进行隐式扫描的原因,只要它不会在运行时更改。 如果您想在重构时保护自己,可以使用类型安全basePackageClasses代替:
@ComponentScan(basePackageClasses = {Config.class, ClassInPackageToScan.class})