Я использую плагин общей библиотеки Jenkins и имею следующую структуру
src/com/domain/service/baseClass.groovy
" /subClass.groovy
У меня есть это в baseClass.groovy
class BaseClass {
Integer port = 5000
String name = null
}
, и я хочучтобы иметь возможность сделать это в subClass.groovy
import com.domain.service.baseClass
class SubClass extends BaseClass {
String name = 'myName'
}
def printValues()
SubClass sc = new SubClass()
println "Name: $sc.name, Port: $sc.port"
}
Идея в том, что я хочу определить общие атрибуты в моем BaseClass и повторно использовать (например, port
) или переопределить (например, name
) их вмой подкласс.Вы знаете - ООД.У меня может быть несколько подклассов, все они наследуются от BaseClass.
Затем на странице конфигурации задания конвейера Jenkins я делаю (я настраивал 'my-repo' в качестве разделяемой библиотеки в конфигурации моей системы)
node('linux-node') {
@library('my-repo')
def sb = new com.domain.service.subClass()
sb.printValues()
}
Когда я запускаю этот конвейер, я получаю следующее.Поддерживает ли разделяемая библиотека этот тип иерархии?
subClass.groovy: 3: unable to resolve class BaseClass