我在共享库的/var目录中使用了一些全局方法,一切都很好。现在我需要保持进程的状态,所以我正在编写一个groovy类。
基本上我有一个名为“classtest.groovy”的类在“/src”中,类似于这样;
class ClassTest {
String testString
def method1() { ... }
def method2() { ... }
}
在管道的开始
library 'testlibrary@'
import ClassTest
结果如下:
WorkflowScript:2:无法解析classtest@line 2,column 1。
导入ClassTest
以前,我只是去
library 'testlibrary@' _
并使用以下方法:
script {
libraryTest.method1()
...
libraryTest.method2()
}
方法在一个文件“/var/librarytest.groovy”中,一切都正常。所以我知道共享库就在那里,但是我对groovy/jenkins处理类/共享库的方式感到困惑。
导入类的正确方法是什么?我在文档中找不到一个简单的示例(使用groovy文件、文件结构和管道)。
编辑:
我将文件移动到“src/com/company/classtest.groovy”,并将管道修改为
@Library('testlibrary@') import com.company.ClassTest
def notification = new ClassTest()
但现在的错误是
意外的令牌:package@line 2
groovy文件的前两行是:
// src/com/company/ClassTest.groovy
package com.company;