如何在包含的JAR中创建Spring的@ComponentScan搜索组件

时间:2015-02-23 17:24:33

标签: java spring spring-mvc spring-boot

我创建了一个包含Spring组件的jar,以包含在多个项目中(core.jar)。

我创建了一个新的Spring项目,将@ComponentScan添加到正确的包中,但它不知道jar中的组件。

如何在包含的JAR中创建Spring的@ComponentScan搜索组件?

2 个答案:

答案 0 :(得分:14)

为其提供适当的包名称以在JAR中扫描。

@ComponentScan(basePackages = {"com.example.from.jar"})

答案 1 :(得分:2)

我在Spring启动和@ComponentScan方面遇到了类似的问题,这个文档帮助我解决了这个问题:http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-structuring-your-code.html

关键是我的@SpringBootApplication类位于@ComponentScan的一个basePackages的根包中。在我将其移动到子包之后,Spring能够识别所有@ComponentScan s。