当前位置: 首页 > 面试题库 >

如何在Maven插件中排除依赖项?

柳才良
2023-03-14
问题内容

我有一个项目,需要以下Maven jibx插件:

  <build>
    <plugins>
      <plugin>
        <groupId>org.jibx</groupId>
        <artifactId>maven-jibx-plugin</artifactId>
        <version>1.2.2</version>
        ...
      </plugin>
    </plugins>
  </build>

在jibx插件pom内部,有一个xpp3依赖关系,我想从我的项目构建过程中排除它(由于某种原因,我无法在私有存储库中拥有它)。

有没有一种方法可以配置我的pom.xml(而不是插件pom)来排除该依赖关系?

编辑:我试图从插件pom中删除xpp3依赖项,并且该项目可以成功构建,所以我知道依赖项不是强制性的。


问题答案:

这是一个示例,其中jetty-maven-plugin依赖于jtidy,并替换为较新的版本:

http://jira.codehaus.org/browse/JETTY-1339?focusedCommentId=257747&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_257747

    <plugin>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <dependencies>
          <dependency>
            <groupId>net.sf.jtidy</groupId>
            <artifactId>jtidy</artifactId>
            <version>r938</version>
          </dependency>
          <dependency>
            <groupId>org.apache.maven.plugin-tools</groupId>
            <artifactId>maven-plugin-tools-api</artifactId>
            <version>2.5.1</version>
            <exclusions>
              <exclusion>
                <groupId>jetty</groupId>
                <artifactId>jetty</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
        </dependencies>
[...]
      </plugin>


 类似资料:
  • 依赖关系:树是: 有人能帮我解除对验证api: jar: 1.0.0. GA的依赖吗?它似乎在wc pom中作为传递依赖。谢谢

  • 问题内容: 我想排除Maven插件的直接依赖关系,并且此答案中描述的方法不起作用(如此注释所示)。 作为一个特定的例子: 我仍然在依赖项列表中(带有)看到了。我究竟做错了什么? (如果有人对如何用该API的JDK 9等效物替换对工件的依赖有了想法[似乎发生在Java 8上,其中“ [JAXB API os从[jar:… jre / lib /rt.jar]“],我很乐意为此开设一期新书。) 更新资

  • 我试图摆脱。SF,。DSA和。bouncyCastle中的RSA文件,这样我就可以将jar包含到我的jar中并远程部署它。我发现我需要使用maven-依赖-插件,但是排除似乎并没有真正……排除。有点破坏了整个目的。 如果我解压缩文件,签名密钥仍然在那里,特别是在META-INF目录中。如果我手动删除它们并重新jar它,应用程序就可以工作。我只需要弄清楚如何自动排除这些文件! 下面是我的POM文件,

  • 关于maven和传递依赖排除有几个问题。然而,我不能让它工作。我的pom中有一些依赖项,它们重新打包了一些库,以减小pom的大小。到目前为止,这是成功的。但是当我运行时,这些可传递的依赖项会被写入。类路径文件。尽管它们被排除在外,如以下摘录所示。 Apache Maven 3.3.3(7994120775791599e205a5524ec3e0dfe41d4a06;2015-04-22T13:57

  • 我在我的项目中遇到了依赖关系冲突的问题。特别是,slf4j日志记录有两种实现:slf4j-简单和logback-经典,我得到了 在运行时。 logback-classic对我来说是必备的依赖项(因为dropwizard),但slf4j-simple不是真的,我想把它从我的uber项目中去掉。只是没那么容易。 我的“uber jar”依赖于“small jar”,而“small-jar”又依赖于“s

  • 我需要从maven Dependence插件中排除单个工件:复制依赖项。 在文档上:https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html我发现了两个有趣的选择: ExcludeArtifactId,它将排除与给定工件id匹配的所有工件(组id上的通配符) ExcludeGroupId