【问题标题】:How to activate a profile if a phase is activated?如果激活阶段,如何激活配置文件?
【发布时间】:2019-11-02 00:37:57
【问题描述】:

有没有办法仅在部署(或未部署)项目时激活 Maven 配置文件?

nexus staging plugin 部署作为反应堆构建一部分的所有模块,因此如果正在部署项目(以部署它们),我想跳过某些模块(单元测试、基准测试等)。

我知道我可以调用mvn -Ddeploy deploy 并根据deploy 属性激活配置文件,但我希望有办法避免两次提及deploy

【问题讨论】:

    标签: maven


    【解决方案1】:

    AFAIK,你不能那样做。

    有可能的配置文件激活列表 (https://maven.apache.org/guides/introduction/introduction-to-profiles.html),说明:

    可以通过多种方式触发/激活配置文件:

    • 明确
    • 通过 Maven 设置
    • 基于环境变量
    • 操作系统设置
    • 存在或丢失文件

    我的猜测是,配置文件会在阶段/目标甚至被 Maven 读取之前进行评估。我试图从https://stackoverflow.com/a/14727072/927493 中弄清楚,但它没有明确地说出来。

    不过,为各个模块中的部署插件设置<skip>true</skip> 可能会有所帮助(也可以使用属性maven.deploy.skip)。

    https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html

    【讨论】:

      猜你喜欢
      • 2011-11-12
      • 2014-10-29
      • 2018-07-03
      • 2015-08-19
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多