【问题标题】:How to specify an artifact in help:effective-pom?如何在 help:effective-pom 中指定工件?
【发布时间】:2018-08-23 09:12:12
【问题描述】:

我正在尝试使用 mvn help:effective-pom -Dartifact=com.group:artifactname:1.0.0-SNAPSHOT 但它仍在为当前项目打印有效的 pom。

有什么方法可以使用吗?我正在关注Maven help:effective-pom documentation

【问题讨论】:

  • 你试过-f,--file <arg> Force the use of an alternate POM file (or directory with pom.xml).
  • 尝试将-X 添加到您的执行中以获得详细的输出。可能值得将输出重定向到文件,因为我希望它很长,并且在前几行中可以找到任何相关信息(例如找不到工件)。

标签: java maven maven-3


【解决方案1】:

此参数是最新的:它至少需要maven-help-plugin3.0.0 版本。
您的 pom.xml 很可能不会使用它。
请注意,输出中没有任何错误,因为用户属性 (-D) 可用于定义插件参数或任何自定义属性。因此,如果无法识别,插件就不会使用它。

所以配置你的 pom 使用支持它的maven-help-plugin 版本或最后一个:

<build>
    <plugins>
      <plugin>
         <artifactId>maven-help-plugin</artifactId>
         <version>3.1.0</version>
      </plugin>
    </plugins>
<build>

或在命令行中明确指定插件的版本:

mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:effective-pom -Dartifact=com.group:artifactname:1.0.0-SNAPSHOT

【讨论】:

  • 我也尝试过(这是我想到的第一件事)但没有任何成功 - 不幸的是,它仍在打印项目的有效 pom 而不是特定的工件。
  • @Dawid Pura 效果很好。我刚刚测试了命令。您可以使用特定的库进行测试吗?例如:com.google.guava:guava:24.0-jremvn org.apache.maven.plugins:maven-help-plugin:3.1.0:effective-pom -Dartifact=com.google.guava:guava:24.0-jre
  • 您可能使用依赖于当前项目的工件进行测试。
猜你喜欢
  • 2011-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-13
  • 1970-01-01
  • 1970-01-01
  • 2022-01-19
  • 1970-01-01
相关资源
最近更新 更多