Класс src общей библиотеки Jenkins - невозможно разрешить класс - PullRequest
0 голосов
/ 10 января 2019

Я ищу некоторые рекомендации по дизайну класса Дженкинс Shared Library. Использование глобальных переменных в качестве разделяемой библиотеки работает нормально, но каждый раз, когда я определяю класс в src / и хочу импортировать его, я получаю сообщение об ошибке, не удается разрешить класс.

Это моя структура общей библиотеки:

src
  - de
   - schlumpf
     - Tester.groovy
vars
  - sayHello.groovy

Класс Tester.groovy

Вот код моего класса, который я хочу инициализировать внутри конвейерного задания.

package de.schlumpf

public class Tester implements Serializable {
  public String name = "test"

  Tester(String pName) {
    this.name = pName
  }

  def sayHi() {
    echo "Hello, ${this.name}."
  }

  def sayHi(String name) {
    echo "Hello, ${name}."
  }
}

Var sayHello.groovy

#!/usr/bin/env groovy

def call(String name = 'human') {
  echo "Hello, ${name}."
}

Работа трубопровода

@Library('pipeline-library-demo')
import de.schlumpf.Tester //de.schlumpf doesn't work as well

stage('Demo') {
    echo 'Hello world'
    sayHello 'test'

    def t = new Tester('Alice')
    t.sayHi()
}

В строке 2 я получаю сообщение об ошибке: Невозможно разрешить класс de.schlumpf.Tester . Глобальная переменная sayHello работает как шарм ... Кто-нибудь знает, что я здесь не так делаю?

Shared Libary импортируется в настройках системы: enter image description here

Я знаю, что это похоже на этот, но я не могу найти опечатку или что-то на моем пути ... Использование общих библиотек Jenkins в качестве классов

Официальная документация здесь: https://jenkins.io/doc/book/pipeline/shared-libraries/

версия

  • Дженкинс: вер. 2.150.1
  • Трубопровод 2,6
  • Трубопровод: Groovy 2.61.1
  • Трубопровод: общие библиотеки Groovy 2.12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...