Groovy Script
Nov 2, 2023
»
Study
개요
Groovy란
- Java에 Python, Ruby 등의 특징을 더한 동적 객체 지향 프로그래밍 언어
- JVM에서 실행되는 스크립트 언어
- Java 호환 가능(Java Class 사용 가능)
- 단순화된 문법을 지원
장점
- 코드를 읽고 유지보수하기 편함
- 더 많은 절차적인 코드를 작성 가능
- 프로그램 작성과 흡사
- 기존 파이프 라인 문법이라 친숙하고 이전 버전과 호환 가능
- 필요한 경우 커스텀한 작업 생성이 가능하기 때문에 유연성 좋음
- 보다 복잡한 워크 플로우 및 파이프 라인 모델링 가능
단점
- 일반적으로 더 많은 프로그래밍이 필요
- Groovy 언어 및 환경으로 제한된 구문 검사
- 전통적인 Jenkins 모델과는 맞지 않음
- 같은 작업이라면 Declarative 문법보다 잠재적으로 더 복잡
문법
문자열
문자열 표기 방법: ‘‘(작은 따옴표) OR ““(큰 따옴표)
’‘(작은 따옴표): 단순한 문자열 출력
”“(큰 따옴표): 문자열 출력, 문자열 내부에 $변수를 이용해 동적인 내용을 표시하는데에 사용 가능
’’’ ‘’’ (작은 따옴표 3개) OR “”” “”“(큰 따옴표 3개로 열고닫기): 여러 행 출력
메소드 호출
괄호 생략 가능
println ('hello')
println 'hello'
형 생략
def 사용 시 모든 타입 변수 생성 가능
String message = 'hi'
def message = 'hi'
클로저(Closure)
클로저: Java의 Lambda(람다)와 매우 유사한 성격의 기능, 어떤 메소드의 인수로 전달할 처리문
실행 방법: <클로저이름>.call() OR <클로저이름>() 으로 실행 가능클로저이름>클로저이름>
def clos1 = {
println 'hi'
}
// 실행
clos1.call()
clos1()