0

두 개의 Spring Boot 프로젝트가 있습니다. FooBar으로 전화를 걸 수 있습니다. Bar은 종속성으로 Foo에 포함됩니다. 이제 라고 가정 해 의 Bar에있는 Foo의 특정 패키지 만 포함하려고합니다. 나는 당신이 excludeFilters을 통해 패키지를 제외 할 수 있다는 것을 알고 있습니다. 그러나 그것은 훨씬 더 많은 노력이 필요하며, Bar에 새 패키지를 만들 때마다 exclude filter-list을 유지해야 할 필요가 있습니다. 해당 동작을 보관하는 가장 좋은 방법은 무엇입니까?스프링 부트 구성 요소 검사에는 특정 패키지 만 포함됩니다.

+0

Foo 프로젝트의 포함 필터가 충분하지 않습니까? – Admit

답변

4

나는 이런 식으로 할 것 :

1) 푸 패키지는 com.example.foo 아래에있는 모든 콩을 것하고 com.example.foo 패키지에서 모든 콩을 스캔 할 수 있도록도 @SpringBootApplication 주요 클래스는 해당 패키지에있을 것입니다. 바 패키지 com.example.bar.ctrl에서

2), 나는 어떤 속성없이 @ComponentScan 주석과 @Configuration를 만들 것이다, 그래서 그것은 단지 ctrl 패키지 + 서브 패키지를 스캔 할 것입니다.

3) 나는 것 점 1에서 메인 클래스로 점 2)에서 @Import 구성 클래스)

@ComponentScaninclude 또는 exclude 속성에 필요한 명시 적 패키지로 제공된다.

+0

그건 나를 위해 일했습니다. 감사! – xvzwx

0

@ComponentScan 주석을 사용하는 경우 basePackages 속성을 사용하여 검색 할 패키지를 String[] 개 가져옵니다.