[英]Groovy script compiles to a class
從這個答案中 ,我了解到,每個Groovy腳本都編譯為擴展groovy.lang.Script
類的類。
以下是在Jenkins編輯器中為Jenkins管道編寫的測試groovy腳本。
node('worker_node'){
print "***1. DRY principle***"
def list1 = [1,2,3,4]
def list2 = [10,20,30,40]
def factor = 2
def applyFactor = {e -> e * factor}
print(list1.each(applyFactor))
print(list2.each(applyFactor))
print "***2. Higher order function***"
def foo = { value, f -> f(value *2) }
foo(3, {print "Value is $it"})
foo(3){
print "Value is $it"
}
}
如何編譯該常規腳本以查看生成的類(源代碼)?
詹金斯管道中的groovy是一種領域特定語言。 這不是一個普通的習慣。
但是,如果刪除node(){ }
那么您的情況似乎很糟。
你可以在運行groovyconsole
或編譯成類groovyc
只需下載穩定的groovy二進制文件並將其解壓縮即可。
如果您的計算機上裝有java7或java8,則可以運行groovyconsole並在那里嘗試代碼。
使用Ctrl+T
您可以看到為腳本生成的實際類代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.