插件开发版本测试指南

我为什么要这样做?

如果您遇到的错误已被报告为已修复但尚未发布,您可以确认它已为您修复。或者,也许您只是喜欢生活在最前沿。

强烈鼓励您加入该项目的开发列表并提供您的反馈,或帮助促进相关插件的发布。

注意:不建议其作为日常或生产实践!快照仅用于测试目的,并非官方发布。有关详细信息,请参阅版本常见问题解答

我该怎么做呢?

Maven 插件的开发版本会定期发布到存储库:https ://repository.apache.org/snapshots/ 。

注意:目前,这不是由我们的持续集成设置自动完成的。这很快就会到来。

其他网站可能会在那里发布自己的内容 - 例如,MojoHaus 项目在https://oss.sonatype.org/content/repositories/snapshots/托管他们的网站

第一步是将其包含在您的项目中:

<project>
  ...
  <pluginRepositories>
    <pluginRepository>
      <id>apache.snapshots</id>
      <url>https://repository.apache.org/snapshots/</url>
    </pluginRepository>
  </pluginRepositories>
  ...
</project>

包含此内容后,可以通过三种方式使用更新版本:

  • 在插件中设置适当的版本,例如2.0.1-SNAPSHOT
  • 如果您没有指定版本,请使用-U开关更新给定 Maven 运行的插件
  • 您可以让 Maven 在给定的时间间隔内自动检查更新,例如:
    <project>
      ...
      <pluginRepositories>
        <pluginRepository>
          <id>apache.snapshots</id>
          <url>https://repository.apache.org/snapshots/</url>
        </pluginRepository>
      </pluginRepositories>
      ...
    </project>

注意:这最后两种技术意味着每个插件都将更新到最新的快照版本。

如果从您的 POM 中删除该<pluginRepository>元素并将版本设置回发布版本,则开发版本将停止使用。如果您使用的是命令行或未指定的版本,您还需要从本地存储库中删除该版本。

在不修改项目的情况下使用设置

如果您在多个项目中使用命令行中的目标,则应将其包含在settings.xml文件中。

您需要修改${user.home}/.m2/settings.xml文件以包含两个新配置文件,然后在需要访问插件快照时使用-Papache. 该配置文件只需要启用一次,以便可以将插件下载到您的本地存储库中。一旦进入本地存储库,Maven 就可以成功解决依赖关系,并且不再需要激活配置文件。

<settings>
  ...
  <profiles>
    <profile>
      <id>apache</id>
      <pluginRepositories>
        <pluginRepository>
          <id>apache.snapshots</id>
          <name>Maven Plugin Snapshots</name>
          <url>https://repository.apache.org/snapshots/</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  ...
</settings>

为 Apache 配置文件调用 Maven 时,请执行以下操作:

mvn -Papache <phase|goal>

使用存储库管理器

除了上述之外,您可能还想使用存储库管理器,以便您可以保留您一直在使用的构建。有关此技术的信息,请参阅测试分阶段发布指南

如何更改插件的源代码和测试开发版本?

有关这方面的信息,请参阅Maven 开发指南