【问题标题】:Maven - exclude the same jar from multiple dependency sectionsMaven - 从多个依赖部分中排除同一个 jar
【发布时间】:2015-10-03 16:51:58
【问题描述】:

我有一个包含许多依赖部分的 pom.xml。许多这些依赖 jar 都嵌入了 junit jar,因此我想将它从每个 jar 的依赖中排除,如下所示 -

<dependency>
        <groupId>abcd</groupId>
        <artifactId>xxdd</artifactId>
        <version>0.0.0.1</version>
        <exclusions>
            <exclusion>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

问题是,对于所有依赖项,我是否必须提供此代码部分以排除 junit jar?有没有办法从所有依赖项中全局排除?

谢谢

【问题讨论】:

    标签: java maven pom.xml


    【解决方案1】:
    <dependency>
        <groupId>abcd</groupId>
        <artifactId>xxdd</artifactId>
        <version>0.0.0.1</version>
        <scope>provided</scope>
    </dependency>
    

    你可以使用provided,这将用于编译但不会用于打包。有关依赖范围的更多信息:https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

    你不需要为多个依赖指定,你可以指定一次,工作就完成了。

    【讨论】:

      【解决方案2】:

      您不必排除 junit,它是使用测试范围定义的,因此不会作为传递依赖项传递给您的项目。如果您真的想将某个组件排除在最终的 war/ear 中(但在编译期间可用),请参阅 Is there a way to exclude a Maven dependency globally?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-04-22
        • 2015-09-23
        • 2015-02-19
        • 2015-03-07
        • 2012-05-27
        • 1970-01-01
        • 2011-11-17
        相关资源
        最近更新 更多