我在 repo 中有一个 Jenkins 共享库,通常的文件夹结构:
vars
utils.groovy
在 utils.groovy 我有一些功能:
void funcA() {}
void funcB() {}
现在我想定义一个该模块中的所有函数都可以使用的常量,但是当我尝试这个时:
String common='hi'
void funcA() {println "A ${common}"}
void funcB() {println "B ${common}"}
我得到一个例外,即 common 不是一个存在的符号:
groovy.lang.MissingPropertyException: No such property: common for class: utils
现在我通过这个hack来解决这个问题:
String _getCommon() {
return 'hi'
}
void funcA() {String common=_getCommon(); println "A ${common}"}
void funcB() {String common=_getCommon(); println "B ${common}"}