动态加载一个groovy类并调用流水线脚本中的方法
我在IntelliJ IDE中开发了groovy类,我想在Jenkins的Pipeline插件的'Pipeline script'中实例化这些类中的一个。我试图按照试过下面还有“Eval.me”和的Class.forName动态加载一个groovy类并调用流水线脚本中的方法
Sample
package com.mycomp.tmo
/**
* Created by
*/
public void callMe(){
println("Hello World !")
}
def e = "callMe"
def cl = Class.forName("com.mycomp.tmo.Sample")
println(Eval.me("${c1} (${e})"))
的例子:
String cls = 'D:\\Users\\b\\IdeaProjects\\Automation\\src\\com\\mycomp\\tmo\\DBConnectionManager'
def map = ['person': ${cls}]
map['person'].newInstance()
我想,我问了两个星期前,后能够回答你的问题。 Create resusable jenkins pipeline script
嗨蒂姆,我的存储库是SVN,将与SVN一样的工作? –
千万别尝试,但我猜如果你把你的groovy代码放在那个工作流文件夹里,它应该是一样的。 – Tim
您好,您分享的帖子是这样做的一种方式,但从git访问库并不总是可行的,因为我说我的回购是SVN。在我的团队内部进行讨论后,我们明白这种方式对我们来说不是可行的。有没有其他方法可以加载文件并调用方法? –
管道插件groovy沙盒根本无法识别类。 –