I have a file that contains classes. Example :
abstract class TestBase
{
String name
abstract def fTest()
def bobby(){
return "bobby"
}
}
class Test extends TestBase
{
def fTest(){
return "hello"
}
}
class Test2 extends TestBase
{
def fTest(){
return "allo"
}
def func(){
return "test :)"
}
}
I want to import the file in my Jenkins pipeline script, so I can create an object of one of my class. For example :
def vTest = new Test()
echo vTest.fTest()
def vTest2 = new Test2()
echo vTest2.func()
How can I import my file in my Jenkins Pipeline ? Thx.
you can do like this:
Classes.groovy
class A{
def greet(name){ return "greet from A: $name!" }
}
class B{
def greet(name){ return "greet from B: $name!" }
}
// this method just to have nice access to create class by name
Object getProperty(String name){
return this.getClass().getClassLoader().loadClass(name).newInstance();
}
return this
pipeline:
node{
def cl = load 'Classes.groovy'
def a = cl.A
echo a.greet("world A")
def b = cl.B
echo b.greet("world B")
}
来源:https://stackoverflow.com/questions/44811293/how-to-import-a-file-of-classes-in-a-jenkins-pipeline