【问题标题】:How to pass arguments to sbt in a jenkinsfile如何在 jenkinsfile 中将参数传递给 sbt
【发布时间】:2019-05-28 15:15:05
【问题描述】:

我正在尝试使用 sbt 将干净的组装步骤启动到 jenkinsfile 中。我使用以下步骤:

sh "${tool name: 'sbt-0.13.13', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt clean assembly -J-Dhttps.proxyHost=my-http-proxy -J-Dhttps.proxyPort=8080 -Xmx1g -Xms2g "

但它似乎不起作用,因为 Xms 参数即使我在上面的命令中给出它也不会被覆盖。输出如下:

[Pipeline] tool
[Pipeline] sh
[workspace] Running shell script
+ /var/lib/jenkins/tools/org.jvnet.hudson.plugins.SbtPluginBuilder_SbtInstallation/sbt-0.13.13/bin/sbt clean assembly -J-Dhttps.proxyHost=egress-http-proxy -J-Dhttps.proxyPort=8080 -J-Xmx1g -J-Xms2g
Picked up JAVA_TOOL_OPTIONS: -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -Dsun.zip.disableMemoryMapping=true
Invalid initial heap size: -Xms7g-
Dorg.csanchez.jenkins.plugins.kubernetes.pipeline.PodTemplateStepExecution.defaultImage=172.30.37.22:5000/openpaas/jenkins-slave-jnlp:release
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

你知道为什么我的论点没有被使用或者你有什么解决办法吗?谢谢

【问题讨论】:

    标签: java scala jvm sbt jenkins-pipeline


    【解决方案1】:

    其实上面代码的问题来自于错误的格式化行:

    -Xms7g-Dorg.csanchez.jenkins.plugins.kubernetes.pipeline.PodTemplateStepExecution.defaultImage=172.30.37.22:5000/openpaas/jenkins-slave-jnlp:release
    

    缺少 -Xms7g 和 -Dorg.csanchez 之间的空格。 要传递参数,您需要使用以下命令和带有 -J 的前缀参数:

    sh "${tool name: 'sbt-0.13.13', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt clean assembly -J-Dhttps.proxyHost=my-http-proxy -J-Dhttps.proxyPort=8080 -J-Xmx1g -J-Xms2g "
    

    【讨论】:

      猜你喜欢
      • 2016-10-25
      • 1970-01-01
      • 1970-01-01
      • 2016-09-24
      • 1970-01-01
      • 1970-01-01
      • 2013-07-25
      • 1970-01-01
      • 2021-08-01
      相关资源
      最近更新 更多