jenkinsfile必会的Groovy语法

Groovy基础语法

Groovy是一种功能强大,可选类型和动态 语言,支持Java平台。旨在提高开发人员的生产力得益于简洁,熟悉且简单易学的语法。可以与任何Java程序顺利集成,并立即为您的应用程序提供强大的功能,包括脚本编写功能,特定领域语言编写,运行时和编译时元编程以及函数式编程。

安装

  1. 确保JDK已经被安装

  2. 使用berw安装

    brew install groovy
    
    • 如果有需要则添加环境变量
    export GROOVY_HOME=xxx
    export PATH=$PATH:$GROOVY_HOME/bin
    

数据类型

字符串string

字符串表示: 单引号、双引号、三引号

contains()                    //是否包含特定内容  返回true false
size() length()               //字符串数量大小长度
toString()                    //转换成string类型
indexOf()                     //元素的索引
endsWith()                    //是否指定字符结尾
minus() plus()                //去掉、增加字符串
reverse()                     //反向排序
substring(1,2)               //字符串的指定索引开始的子字符串
toUpperCase() toLowerCase()  //字符串大小写转换
split()//符串分割,默认分隔符为空格,返回列表

列表list

列表的表示: [] [1,2,3,4]

+ - += -=                         //元素增加减少
判断add()  <<                      //添加元素
isEmpty()                         //是否为空
intersect([2,3]) disjoint([1])    //取交集、判断是否有交集
flatten()                         //合并嵌套的列表
unique()                          //去重
reverse() sort()                  //反转 升序
count()                           //元素个数
join()                            //将元素按照参数链接
sum() min() max()                 //求和 最小值 最大值
contains()                        //包含特定元素
remove(2) removeAll()
each{}                            //遍历,遍历时默认的接受参数的变量是it

映射map

types = [“maven”:“mvn”]

size()                             //map大小
[’key’]  .key get()                //获取value
isEmpty()                          //是否为空
containKey()                       //是否包含key
containValue()                     //是否包含指定的value
keySet()                           //生成key的列表
each{}                             //遍历map
remove(‘a‘)                        //删除元素(k-v)

流程控制

if语句

在Jenkinsfile中可用于条件判断。

if (表达式) {
   //xxxx
} else if(表达式2) {
   //xxxxx
} else {
   //
}

switch语句

switch("${buildType}"){
    case ”maven":
    //xxxx
        break;
    case ”ant":
    //xxxx
        break;
    default:
    //xxxx
}

for循环语句

test = [1,2,3]
for ( i in test){
    ///xxxxxx
    break;
}

//代码
langs = ['java','python','groovy']

for ( lang in langs ){
    if (lang == "java"){
        println("lang error in java")
    }else {
        println("lang is ${lang}")
    }
}

while

while(true){
    //xxxx
}

函数

在共享库中每个类中的方法。

def PrintMes(info){
    if (info == "DevOps"){
      return info
    }
}
response = PrintMes("DevOps")
println(response)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值