【问题标题】:Only execute maven-release-plugin deploy steps for a specific sub-module/project仅为特定子模块/项目执行 maven-release-plugin 部署步骤
【发布时间】:2012-11-03 15:29:25
【问题描述】:

我有一个 maven 项目,其组织方式如下:

我的项目

  • 核心(父级 -> oss.sonatype.org)
  • 包(父 -> MyProject)

MyProject 和 Package 用于将项目捆绑为专有部署方法(创建专门的 Zip)

我想要做的是能够将 Core 项目部署到 OSS Sonatype Nexus Repo 以通过 Maven 依赖项在其他项目中使用。

“MyProject”连同其子项目(Core、Package)一起被检入 github。

我的问题是,当我执行 maven release:perform(在核心目录中)时,它会从 github 检出 MyProject,然后针对 Parent 的 pom 运行 maven deploy ——因为它是结帐根目录中的 pom .

我不想处理嵌套的 git repos;弄清楚如何在一个 repo 中维护 MyProject 和 Package,在另一个 repo 中维护 Core。

那么,我该怎么做:

  1. 告诉 maven-release-plugin(通过 oss.sonatype.org 父 pom 包含)仅针对核心项目执行。
  2. 告诉 maven-release-plugin 跳过对 MyProject 和 Package 项目的所有部署操作。 (我想我会更喜欢这个,因为 maven-release-plugin 可以让我的 POM 版本保持同步)。

【问题讨论】:

    标签: maven nexus pom.xml maven-release-plugin sonatype


    【解决方案1】:

    我认为如果你不释放父模块,你就不能释放一个模块。

    我查看了有关插件的文档,您可以释放父级,但我没有找到有关仅释放子级的信息。

    见:http://maven.apache.org/maven-release/maven-release-plugin/faq.html#nonrecursive

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-24
      • 2011-06-10
      • 1970-01-01
      • 2019-02-13
      • 1970-01-01
      • 1970-01-01
      • 2020-04-20
      • 1970-01-01
      相关资源
      最近更新 更多