Библиотека Дженкинса: java.lang.NullPointerException: невозможно вызвать метод xxx для нулевого объекта - PullRequest
0 голосов
/ 01 июня 2018

Я использую декларативные конвейеры и отдельных помощников по конвейеру.В одном из помощников у меня есть файл vars / getTriggerCause.groovy с

/**
* Checks for cause of the job trigger and returns respective cause
* @return user, scm, time or other
*/
def String getCause() {
    echo "CAUSE ${currentBuild.rawBuild.getCauses().properties}"
    def cause = "${currentBuild.rawBuild.getCauses()}"
     if (cause =~ "UserIdCause") {
         return "user"
    }
}

/**
* Checks if trigger cause of the job is the timer
* @return true if trigger is timer
*/
def boolean isTime() {
    return this.call() == "time"
}

Теперь я хочу использовать функцию в Jenkisfile, как это

echo getTriggerCause().isTime()

, что приводит к NPE:

java.lang.NullPointerException: Cannot invoke method getCause() on null object

Когда я смотрю на это , я ожидаю, что это сработает.Единственное отличие от связанного примера в том, что я загружаю библиотеку динамически из scm.

Ответы [ 2 ]

0 голосов
/ 10 июля 2018

У меня было похожее сообщение об ошибке, когда я использовал load, проблема была в том, что я забыл вернуть this из файла groovy.

0 голосов
/ 12 июня 2018

Снятие скобок решает проблему, так что это работает

getTriggerCause.isTime()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...