Jenkins管道脚本失败并出现“类生成期间的常规错误:方法代码太大!”

运行大型Jenkins管道脚本时,它可以给出错误:

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during class generation: Method code too large!

java.lang.RuntimeException: Method code too large!

这个错误的原因是什么?如何解决?

最佳答案 这是由于
Java和Groovy之间的限制,要求方法字节码不大于64kb.这不是由于Jenkins Pipeline DSL.

要解决这个问题,请将其分解为方法并调用方法,而不是使用单个整体管道脚本.

例如,而不是:

stage foo
parallel([
 ... giant list of maps ...
])

相反:

stage foo
def build_foo() {
  parallel([
     ...giant list of maps...
  ])}
build_foo()
点赞