相关疑难解决方法(0)

在Groovy中打印闭包定义/源代码

谁知道如何在Groovy中打印封闭源?

例如,我有这个闭包(绑定到a)

def a = { it.twice() } 
Run Code Online (Sandbox Code Playgroud)

我想要String "it.twice()"或"{it.twice()}"

只是一个简单的过程是toString行不通的:

a.toString(); //results in: Script1$_run_closure1_closure4_closure6@12f1bf0
Run Code Online (Sandbox Code Playgroud)

groovy closures

15
推荐指数
2
解决办法
8785
查看次数

带有自定义settings.xml的Jenkins声明管道

我正在尝试用maven 建立一个Jenkins 声明管道.到目前为止,我可以让maven运行,但我无法使用我定义的Maven Settings.xml.

pipeline{
   agent any
   tools{
       maven 'Apache Maven 3.3'
       // without mavenSettingsConfig, my settings.xml is not used.  With it, this blows up
       mavenSettingsConfig: 'Global Maven Settings'
       jdk 'jdk9
   }
   stages {
       stage('Preparation'){
           steps{
              //code checkout stuff here--this works fine
           }
       }
       stage('Build'){
            steps{
               sh "mvn clean install -P foo"
            }
       }
   }
}
Run Code Online (Sandbox Code Playgroud)

问题似乎是mavenSettingsConfig.没有该属性,我无法弄清楚如何设置settings.xml,我的自定义maven东西不起作用.(例如,配置文件foo.)使用mavenSettingsConfig,它会爆炸:

BUG!源单元'WorkflowScript'中的'规范化'阶段中的异常意外NullpointerException ....

文档中有一个很大的TODO,它将为此提供一个示例!那我该怎么做?

(文档TODO在https://wiki.jenkins.io/display/JENKINS/Pipeline+Maven+Plugin.它实际上说"TODO提供了Jenkins声明管道的样本")

maven jenkins jenkins-pipeline

9
推荐指数
2
解决办法
8381
查看次数

标签 统计

closures ×1

groovy ×1

jenkins ×1

jenkins-pipeline ×1

maven ×1