【问题标题】:Jenkins: Pass multiple MAVEN profiles via user selectionJenkins:通过用户选择传递多个 MAVEN 配置文件
【发布时间】:2018-11-21 21:48:57
【问题描述】:

以下情况:我想通过 jenkins 构建一个 maven 项目,并且还能够选择多个 maven 配置文件(准确地说,它必须使用两个配置文件构建,其中一个是称为“dev”的固定值,所以基本上我希望能够在构建之前从配置文件列表中选择第二个配置文件,因此是参数化构建。我将可选配置文件添加为选项列表,现在我可以从下拉列表中选择它,到目前为止,非常好。

但是:问题似乎出在多个配置文件部分。

在我输入的 maven 目标字段中

clean install -Pdev,$Client

'Client' 是包含所选值的构建的参数。

但是如果我开始构建,命令行会显示例如

mvn clean install "-Pdev,test"

问题在于它将配置文件包装在撇号中。如果我使用单个参数对其进行测试,它会按预期工作:

clean install -P$Client

【问题讨论】:

    标签: maven jenkins extended-choice-parameter


    【解决方案1】:

    根据以下解释,尝试其中一些:

    #1    mvn install -P profile1,profile2
    #2    mvn install -Pprofile1 -Pprofile2
    #3    mvn install -P 'profile1,profile2'
    

    说明

    根据官方文档

    正确的多配置文件调用是:

    mvn groupId:artifactId:goal -P profile1,profile2

    并且允许一些变化:

    mvn install -Pprofile1 -Pprofile2

    Ans 一如既往:s 对 windows 的特殊处理:

    mvn install -P 'profile1,profile2'

    【讨论】:

    • 正如我在帖子中所说,我已经尝试过通常的“-Pprofile1,profile2”,但它不起作用......我还尝试了变体“-Pprofile1 -Pprofile2”。
    • 您的通常“-Pprofile1,profile2”错误。它类似于#1,但您需要详细检查。我尝试过并且工作过。
    • ?我不明白。我尝试了每一种组合,如果我使用一个动态配置文件和一个修复配置文件,无论我是否将它们包裹在单引号或双引号中,它都不起作用。我所说的“通常”是指使用多个配置文件调用 mvn clean install 的正常方式!
    • 你能分享给我们一个 github 上的 maven 项目(hello world)和截图吗?或者你的 jenkins 是如何配置的?也许是詹金斯版本问题:s
    猜你喜欢
    • 2013-09-20
    • 1970-01-01
    • 2019-08-24
    • 1970-01-01
    • 2016-07-11
    • 1970-01-01
    • 2017-08-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多