我正在使用以下代码构建后我的詹金斯工作步骤:
evaluate(new File("Set-BuildBadge.groovy"));
因此,如果确实如此,它就会成功运行脚本not包含函数。
如果在脚本中我定义了一个function例如:
def addSummaryWithText(Icon, Text) {
manager.createSummary(Icon).appendText(Text, false)
}
...
addSummaryWithText("installer.gif", "Project: " + ProjectName)
然后我收到以下错误:
致命:类中的类名“Set-BuildBadge$addSummaryWithText”非法
文件 Set-BuildBadge$addSummaryWithText java.lang.ClassFormatError:
类文件中的非法类名“Set-BuildBadge$addSummaryWithText”
设置-BuildBadge$addSummaryWithText at
java.lang.ClassLoader.defineClass1(本机方法) ...
我不明白怎么办GroovyShell.evaluate作品。
谁能帮我?
看起来 JVM 不喜欢带有连字符的类名。
通过调用你的脚本Set-BuildBadge.groovy
在内部,它被编译成一个类,当您向脚本添加函数时,不允许使用该类。
将脚本名称更改为SetBuildBadge.groovy
会修复它:-)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)