【问题标题】:Activate profile when finishing release using jgitflow Maven plugin?使用 jgitflow Maven 插件完成发布时激活配置文件?
【发布时间】:2016-10-23 05:02:48
【问题描述】:

我有一个 Maven 配置文件 documentation,我想在运行 mvn jgitflow:release-finish 时激活它。我知道我能做到:

mvn jgitflow:release-finish -Pdocumentation

因为插件的文档说明:

在构建时自动将命令行上传递的任何配置文件 (-P) 和用户属性 (-D) 复制到分叉的 maven 进程

但这意味着您不能忘记手动添加此配置文件。

目标:我希望能够配置 Maven,以便此配置文件自动激活(或者我可以在“发布”配置文件激活时以某种方式激活我的配置文件)。

【问题讨论】:

    标签: java maven maven-3 jgitflow-maven-plugin


    【解决方案1】:

    jgitflow:release-finish 目标实际上使用了一个默认选项 useReleaseProfile 定义:

    如果合适,是否使用将源代码和 javadoc 添加到已发布工件的发布配置文件。如果设置为true,插件会将属性performRelease设置为true,这会激活从超级pom继承的配置文件“release-profile”。

    此选项的默认值为true,因此在执行此目标时默认将performRelease 属性设置为true

    请注意,上面提到的发布配置文件是由super POM定义的,这个插件实际上使用它,但也由maven-release-plugin通过类似的useReleaseProfile选项使用。

    然后您也可以根据此选项激活您的profile,如下所示:

    <profiles>
      <profile>
        <id>documentation</id>
        <activation>
          <property>
            <name>performRelease</name>
            <value>true</value>
          </property>
        </activation>
        ...
      </profile>
    </profiles>
    

    这意味着您仍然可以通过-P 选项明确激活它,并且它也会被目标自动激活。

    【讨论】:

    • 有没有办法指定使用哪个配置文件?如果我们不想在超级 POM 中运行插件执行,只需要我们配置的那些怎么办?我还注意到链接的超级 POM 中的评论“”
    猜你喜欢
    • 1970-01-01
    • 2016-04-24
    • 2018-07-03
    • 1970-01-01
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 2011-11-12
    • 2014-10-29
    相关资源
    最近更新 更多