2017-06-23 45 views
1

我想構建一個接受參數來覆蓋默認值的函數,但我總是收到「null」。詹金斯管道共享庫 - 傳遞參數

我寫了一個簡單的函數:

// vars/Run.groovy 
def test(String type, String parallel = 'yes') { 
    println(type) 
    println(parallel) 
} 

我的管道是這樣的:

node('master') { 
    Run.test('unit') 
    Run.test('unit', parallel = 'no') 
} 

結果我得到的是:

unit 
yes 

unit 
null 

我缺少什麼?

回答

2

你只需要通過價值。這將覆蓋您的默認值。

Run.test('unit', 'no') 
+1

但是,如果你有幾個可選的參數,你會怎麼做? 例如: def test(String type,String foo ='bar',String parallel ='yes') 我只想重寫'parallel'? – user1559263