2016-01-25 4 views
1

В моем проекте загрузки весны я должен использовать внешнюю библиотеку, в которой он определяет beans в весеннем контексте. Так что в моем классе приложений я добавить, ниже которого является базовым пакетом для Бота моего проекта и внешней библиотеки,@ComponentScan на внешней библиотеке не работает

@SpringBootApplication(exclude = SecurityAutoConfiguration.class) 
@EnableHypermediaSupport(type = { EnableHypermediaSupport.HypermediaType.HAL }) 
@EnableSwagger2 
@ComponentScan(basePackages = {"com.mylibrary.test", "com.otherlibrary.springtool"}) 
//@EnableDiscoveryClient 
public class Application extends RepositoryRestMvcConfiguration { 
} 

Но бобы в другой библиотеке, такие как @Configuration не инициализировать?

+0

Куда вы добавили этот '@ ComponentScan'? Это даже сканирование? –

+0

@ M.Deinum У меня есть вопрос: – Harshana

+1

Эта конфигурация выглядит хорошо для меня. Возможно, вы захотите использовать 'basePackageClasses', чтобы исключить опечатку в имени пакета. Кроме того, если вы используете Spring Boot 1.3, вы можете настроить пакеты для сканирования непосредственно на 'SpringBootApplication' и избегать дополнительной аннотации –

ответ

1

@ComponentScan работает для классов, которые аннотируются с @Component, @Repository или @Service. Убедитесь, что классы в «com.otherlibrary.springtool» аннотируются с приведенной выше аннотацией, или вы должны объявить их как «Весенние бобы» с аннотацией @Bean. Надеюсь, поможет.

Смежные вопросы