[英]Jenkins Groovy post-build script to evaluate file with function
我在Jenkins工作的后期構建步驟中使用以下代碼:
evaluate(new File("Set-BuildBadge.groovy"));
所以它成功運行的腳本,如果它不包含的功能。
如果在腳本中,我將定義一個函數 ,例如:
def addSummaryWithText(Icon, Text) {
manager.createSummary(Icon).appendText(Text, false)
}
...
addSummaryWithText("installer.gif", "Project: " + ProjectName)
然后我得到以下錯誤:
嚴重:類文件Set-BuildBadge $ addSummaryWithText java.lang.ClassFormatError中的非法類名“ Set-BuildBadge $ addSummaryWithText”:java.lang.ClassLoader中類文件Set-BuildBadge $ addSummaryWithText中的非法類名“ Set-BuildBadge $ addSummaryWithText” .defineClass1(本機方法)...
我不了解GroovyShell.evaluate的工作方式。 誰能幫我?
看起來JVM不喜歡其中帶有連字符的類名。
通過在內部調用腳本Set-BuildBadge.groovy
,可Set-BuildBadge.groovy
其編譯為在向腳本添加函數時不允許的類。
將腳本的名稱更改為SetBuildBadge.groovy
可以解決它:-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.