2014-03-25 1 views
2

enter image description here메이븐 그늘 - 내가 종속성의 전부와 항아리로 패키지 공통 서비스를 사용자 정의 구성

와 실행 종속 항아리를 재 포장.

Consumer1, consumer2, consumer3은 Common_service에 대해 다른 구성을 제공합니다. common_service를 모든 패키지 내용으로 재 패키징하는 가장 좋은 방법은 무엇입니까?

최종 출력, Consumer1에 줄 것이다 :

  • Consumer1-shaded.jar을 (공통 서비스없이)
  • Consumer1 - 공통 service.jar (사용자 정의 구성 만 공통 서비스)

Consumer2는 줄 것이다 :

  • Consumer2-shaded.jar을 (공통 서비스없이)
  • Consumer2 - 공통 service.jar (사용자 정의 구성 만 공통 서비스)

나는 common_service를 재 포장하는 받는다는 그늘을 시도,하지만 난 명시 적으로 소비자의 일반적인 서비스의 모든 종속성을 포함해야합니다. 왜 소비자가 공통 서비스 내용을 알고 있어야합니까? 항아리를 가지고 직접 구성하고 재 포장을하는 직접적인 방법이 있습니까?

답변

0

원하는 것을 얻으려면 아마도 가장 좋은 방법은 4 개의 메이븐 모듈을 사용하는 것입니다. common_service 모듈은 더 이상 음영 처리 된 jar 파일을 생성하지 않고 일반 jar 파일 만 생성합니다. consumer_1 모듈은 구성 파일을 포함하고 common_service를 종속성으로 가지며 음영 처리 된 jar를 생성합니다. consumer_2 및 consumer_3 모듈은 consumer_1 모듈과 유사하게 설정됩니다.

관련 문제