詹金斯动态组合矩阵

时间:2016-03-22 09:42:20

标签: jenkins groovy jenkins-plugins

我一直在使用选项参数化触发器插件中将矩阵执行限制为子集,将组合过滤器传递给相当大的Matrix项目,其中所有测试执行完成。随着测试次数的增加,组合过滤器(动态构建)也会增长,我似乎达到了上限。以下作业收到此错误消息:

FATAL: Invalid method Code length 69871 in class file Script1 java.lang.ClassFormatError: Invalid method Code length 69871 in class file Script1

在阅读了这个问题之后,在阅读JVM documentation后,它似乎是一个JVM约束

  

code_length项的值必须小于65536。

我得到的印象是,这不是我可以(甚至应该)在詹金斯修补的东西。

我的第二个想法是解决这个问题是创建组合过滤器,然后将其作为String参数传递给以下Matrix项目,然后使用组合过滤器选项并展开变量来实现同样的结果。

不幸的是,在尝试使用String参数作为组合过滤器

保存我的Matrix项目时出现此异常

javax.servlet.ServletException: groovy.lang.MissingPropertyException: No such property: $COMBINATION_FILTER for class: groovy.lang.Binding

我想这是因为保存时变量需要在配置中可用,但我想在启动Matrix项目时注入它。

我没有想法来解决这个问题。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以尝试Matrix Groovy Execution Strategy,就像超级组合过滤器一样

如果我可以引用自己

  

决定执行顺序和有效组合的插件   矩阵项目。

     

这使用用户定义的groovy脚本来排列将要执行的顺序   然后被执行

免责声明:我构建了这个插件