仅对特定子模块/项目执行maven-release-plugin部署步骤

时间:2012-11-15 02:16:57

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

我有一个组织为:

的maven项目

MyProject

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

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

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

“MyProject”与其子项目(Core,Package)一起被检入github。

我的问题是当我做maven发布时:执行(在Core目录中),它从github检出MyProject,然后对父亲的pom运行maven deploy - 因为它是结帐的根目录中的pom

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

那么,我怎么能:

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

1 个答案:

答案 0 :(得分:1)

我认为如果您不释放父级,则无法释放模块。

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

请参阅:http://maven.apache.org/maven-release/maven-release-plugin/faq.html#nonrecursive