[英]maven repackage module to resolve dependency conflict
我有一個項目有2個模塊,如下所示:
parent
├── SDK module
└── service module
服務模塊依賴於SDK模塊。 SDK模塊必須依賴於httpClient 3.x,但服務模塊必須依賴於httpClient 4.x.
我知道spring有一個重新包裝的cglib。 所以我想重新打包httpClient 3.x到SDK模塊來解決這個問題。
有誰知道怎么做?(也許spring-boot:重新包裝?)
理想情況下,在開發中的服務中,我希望盡可能避免沖突的依賴項。
如果真的不在個人手中,你可以在你的pom依賴聲明中使用<exclusions>
來避免版本沖突。 只是嘗試,圍繞它的樣本將是: -
SDKModule/pom.xml
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>3.1</version><!--just an example-->
</dependency>
ServiceModule/pom.xml
<dependency>
<groupId>some-group-id</groupId>
<artifactId>sdk-module</artifactId>
<version>some.version</version>
<exclusions>
<exclusion>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--This adds an exclusive version of httpclient not included via sdk-module-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.3</version>
</dependency>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.