3 回答

TA貢獻1839條經驗 獲得超15個贊
只需在當前pom中指定版本即可。此處指定的版本將覆蓋其他版本。
強制版本
如果在當前POM中使用特定版本聲明了版本,則將始終采用該版本-但是,應注意的是,如果該版本本身依賴于使用傳遞依賴項,則這也會影響下游的其他pom。

TA貢獻1803條經驗 獲得超3個贊
或者,您可以僅排除不需要的依賴項。STAX包含在JDK 1.6中,因此,如果您使用1.6,則可以完全排除它。
我下面的示例對您來說有點不對-您只需要兩個排除項之一,但我不確定哪個是排除項。還有其他版本的Stax,在下面的示例中,我導入A,然后導入B,又導入C&D,每個C&D(通過更多傳遞依賴項)都導入了不同版本的Stax。因此,由于我對'A'的依賴性,我排除了Stax的兩個版本。
<dependency>
<groupId>a.group</groupId>
<artifactId>a.artifact</artifactId>
<version>a.version</version>
<exclusions>
<!-- STAX comes with Java 1.6 -->
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>javax.xml.stream</groupId>
</exclusion>
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>stax</groupId>
</exclusion>
</exclusions>
<dependency>

TA貢獻1860條經驗 獲得超8個贊
我也無法排除第三方庫中的依賴項。我在排除時使用了scot的方法,但在pom中也將依賴關系添加到了較新的版本中。(我使用了Maven 3.3.3)
因此,對于stAX示例,它看起來像這樣:
<dependency>
<groupId>a.group</groupId>
<artifactId>a.artifact</artifactId>
<version>a.version</version>
<exclusions>
<!-- STAX comes with Java 1.6 -->
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>javax.xml.stream</groupId>
</exclusion>
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>stax</groupId>
</exclusion>
</exclusions>
<dependency>
<dependency>
<groupId>javax.xml.stream</groupId>
<artifactId>stax-api</artifactId>
<version>1.0-2</version>
</dependency>
- 3 回答
- 0 關注
- 1478 瀏覽
添加回答
舉報