Maven2:如何确定 Maven 构建正在使用特定的插件版本?

2024-02-11

我刚刚发现 Maven 插件管理听起来很奇怪。

在进行网站生成时,我想使用特定版本的 Maven 网站插件,以便实现特定的功能。 假设我想使用这个插件的 2.0.1 版本。

如果我使用 POM 的报告部分来使用以下命令生成项目站点:

mvn site

这很好用。我的意思是使用的插件版本是我想要的2.0.1。以下是我的 POM 配置站点插件的摘录:

<reporting>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-site-plugin</artifactId>
            <version>2.0.1</version>
        </plugin>
    </plugins>
</reporting>

现在,如果我希望在构建生命周期的特定阶段(例如准备包(和目标阶段))生成我的网站,我将在 部分中添加以下部分:

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>

        <executions>
            <execution>
                <phase>prepare-package</phase>
                <goals>
                    <goal>stage</goal>
                </goals>
            </execution>
        </executions>
     </plugin>
</plugins>

在这里,我被来自 Super POM 的 Maven 站点插件版本困住了,即。 2.0-beta-7。 即使我尝试添加指定我确实想使用版本 2.0.1 的配置,它仍然使用 2.0-beta-7。 我还尝试在该部分中添加版本,因为报告部分中使用的配置也应该应用于构建部分。但这也不起作用。

也许我错过了一些东西,如果我错了,请纠正我,但这看起来像一个错误。 Maven 端是否需要修复构建过程中要使用的插件版本?

Thanks!


如果你在pom中定义了一个pluginManagement部分,你可以声明任何插件使用的版本,这将覆盖从超级POM继承的版本

例如:

<pluginManagement>
  <plugins>
    <plugin>
      <artifactId>maven-site-plugin</artifactId>
      <version>2.0.1</version>
    </plugin>       
  </plugins>
</pluginManagement>

您可以参考文档 http://maven.apache.org/pom.html#Plugin_Management有关配置插件管理的一些背景知识。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Maven2:如何确定 Maven 构建正在使用特定的插件版本? 的相关文章

  • Maven 不会使用公钥来部署

    我正在使用 SSH 将我的 Java 工件部署到服务器 我设置了密钥 以便可以交互式 SSH 到服务器而无需密码 但是当我尝试运行 mvn deploy or mvn release perform 命令 它挂起 我认为是密码提示 My m
  • 如何以编程方式调用 Maven 依赖插件

    我正在尝试以编程方式调用 maven dependency plugin 我正在使用 Maven 3 版本 问题是 当我通过pluginManager executeMojo session execution 调用它时 我收到以下错误消息
  • 如何使用maven操作Manifest文件

    我有一个用 Maven 构建的 EAR 文件 EAR 包含多个 jar 我需要在清单文件中为其中一个 jar 添加一行 我知道 maven jar plugin 选项 manifestEntries 但这对于单个独立 jar 很有用 而不是
  • 没有插件目标绑定到 Maven 阶段

    在 Maven 中相当新 通过阅读 Maven 文档官方网站 http maven apache org guides introduction introduction to the lifecycle html 我知道在默认的生命周期中
  • one-jar 删除有关应用程序加载的详细警告信息

    我正在使用 Maven 带有 one jar 插件 但是当我运行 one jar 可执行文件时 我遇到了一堵警告墙 这是不可接受的使用 我查看了一个罐子上的所有可用资源 但没有看到有关如何保持罐子在运行时发出大量警告的说明 有人解决了这个问
  • Maven jdepend 循环构建失败

    当包循环存在时 有没有办法使用 maven 中的 jdepend 插件来使构建失败 我知道你可以用 ant 很容易地做到这一点 但我还没有弄清楚如何用 Maven 做到这一点 谢谢 杰夫 根据已接受的答案 我改进了性能和日志输出 并将其发布
  • java webapp配置策略

    我的网络应用程序的一部分涉及上传图像文件 在生产服务器上 文件需要写入 somepath on Production server images 对于本地开发 我想将文件写入 some different path images 处理这些配
  • 如何处理Junits中Maven和Intellij之间的相对路径

    我有一个带有模块的 Maven 项目 myProject pom xml myModule pom xml foo bar txt 考虑一个 JunitmyModule需要打开哪个bar txt 对于 maven basedir 是模块目录
  • 冬眠混乱。 GA、GA 和最终版本之间有什么区别?兼容性?存储库?

    谁能解释一下 1 ga GA 和 Hibernate 最终版本之间的区别 2 我应该使用maven存储库还是jboss nexus存储库 3 为什么最新的兼容性矩阵 http community jboss org wiki Hiberna
  • 通过 m2e 自动更新生成的 css 文件

    我正在使用lesscss maven plugin生成不同的css文件到目标目录 target generated sources 然后使用maven war plugin将此目录添加为 webResouce 这些文件将完美生成 但是 m2
  • 在 Eclipse 中运行 JUnit 单元测试时出现 ClassNotFoundException(使用 Maven)

    我刚刚将 SpringSource Tools Suite STS Eclipse 的一个变体 IDE 升级到最新版本 v3 6 1 那么我的所有 JUnit 单元测试都无法再次运行 我收到此错误 Class not found Class
  • Eclipse(STS)+ Maven

    我基本上有两个问题 有没有办法从 Eclipse 调用 Maven 控制台 我可以在哪里写eclipse eclipse 并开始构建 eclipse 项目 哪里有STS http www springsource com products
  • Mojo 配置的自定义类型转换器?

    我需要使用自定义类型 例如LunarDate 在我的 Mojo 对象中 class MyMojo extends AbstractMojo parameter LunarDate lunarDate 我想配置参数
  • 由于 http 响应 405,无法执行 mvn tomcat:deploy

    我正在将 Tomcat 7 作为 Windows 服务运行 我想在我的项目根目录中进行 mvn tomcat 部署 但总是出现这个错误 你能帮我解决这个问题吗 INFO Deploying war to http localhost 808
  • Maven - 将 XSD 作为依赖项

    我们有一个项目定义了它使用 XSD 文件生成的消息格式 将这些 XSD 文件作为另一个项目的依赖项的最简单方法是什么 我正在考虑使用maven build helper 附加工件 http www mojohaus org build he
  • Maven 不会运行测试

    跑步时mvn testmaven 不会运行所有测试类 当我通过添加显式提供一个类时 Dtest PropertyTests将运行测试 这是我的 pom xml
  • 为多模块项目创建所有 jar 和源 jar 的存档

    我正在构建一个 Maven 项目 其中有六个模块 我可以自己使用 Maven 或 Ivy 导入它 但其他团队也想使用这些 jar 但他们的做法是将 jar 和源 jar 提交到版本控制 我想生成所有模块及其源代码的 zip tar 程序集
  • 为什么范围为“provided”的依赖项会隐藏 Maven 中的传递依赖项?

    我的 Maven 项目中有三个模块 这稍微简化了 model包含JPA注释的实体类 坚持实例化一个实体管理器并调用它的方法 应用创建类的实例model 设置一些值并将它们传递给坚持 model and 坚持显然取决于javax persis
  • 如何查看 Maven pom.xml 文件的传递依赖关系?

    有没有一个 CLI 工具可以用来快速查看 Maven 的传递依赖关系pom xml file 在 CLI 上 使用mvn dependency tree http maven apache org plugins maven depende
  • 如何找到 Maven 目标绑定的默认阶段?

    在 Maven 中 我如何找出目标的默认阶段 如果该特定目标存在任何默认阶段 Example 我正在使用一个名为的 Maven 插件Jetty Maven 插件 http wiki eclipse org Jetty Feature Jet

随机推荐