当我在脚本控制台中运行简单语句时,我可以看到打印输出,例如
println "hello"
然而,使用此代码,我发现在Jenkins脚本控制台中运行时没有打印输出。你知道为什么吗 ?从计算机命令行运行时,代码打印正常。
class Product{
private String name
private def price
def vendor
public Product(){
}
Product(name, price, String vendor){
println "Constructor";
this.name = name
this.price = price
this.vendor = vendor
}
public String getName(){
return name
}
def setName(name){
this.name = name
}
public String getPrice(){
return price
}
def setPrice(price = 100.00){
this.price = price
}
def String toString(){
return "Name = $name, Price = $price, Vendor = $vendor";
}
static main(arguments){
def p1 = new Product("Mobile", "10000", "Nokia")
println(p1.toString())
println "Hello"
}
}
答案 0 :(得分:3)
AFAIK您在Jenkins控制台中编写的脚本实际上是包装类的主要功能。带来所有预先导入的Jenkins类的那个。这就是为什么你定义的main
没有被编译成Groovy run
方法,因为当你从计算机命令行执行脚本时就会这样做。
如果你想要执行你的main,只需将它放在类定义之外,如下所示:
class Product {
...
}
def p1 = new Product("Mobile", "10000", "Nokia")
println(p1.toString())
println "Hello"