gpt4 book ai didi

maven - 有没有办法全局排除 Maven 依赖项?

转载 作者:行者123 更新时间:2023-12-03 05:11:28 36 4
gpt4 key购买 nike

我正在尝试找到一种“通用”方法来排除传递依赖项,而不必将其从依赖于它的所有依赖项中排除。例如,如果我想排除 slf4j,我会执行以下操作:

  <dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jmx</artifactId>
<version>3.3.2.GA</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
<type>jar</type>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>

这部分是为了清理 pom 文件,部分是为了避免将来人们添加依赖于已排除依赖项的依赖项时出现问题 - 并忘记排除它。

有办法吗?

最佳答案

这有帮助吗? http://jlorenzen.blogspot.com/2009/06/maven-global-excludes.html

“假设我想从 WAR 中排除 avalon-framework,我会将以下内容添加到我的项目 POM 中,并提供范围。这适用于所有传递依赖项,并允许您指定一次。

<dependencies>
<dependency>
<artifactId>avalon-framework</artifactId>
<groupId>avalon-framework</groupId>
<version>4.1.3</version>
<scope>provided</scope>
</dependency>
</dependencies>

这甚至在父 POM 中指定它时也有效,这将防止项目必须在所有子 POM 中声明它。”

关于maven - 有没有办法全局排除 Maven 依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4716310/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com