Как решить проблему groovy.lang.MissingMethodException: Нет подписи метода: - PullRequest
0 голосов
/ 04 апреля 2019

Я получаю сообщение об ошибке в сценарии конвейера jenkins.Ошибка говорит о том, что groovy.lang.MissingMethodException: нет подписи метода: org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper.getExecutor () применима для типов аргументов: () values: []

Я пытаюсь интегрировать Дженкинс и Графана

   stage('Grafana Results') {

 // grafana url for aggregate dashboard - replace time stamp with %s
   def perfResult = "<grafana url>?orgId=39&from=%s&to=%s"
 // get build start and end time
  def start = currentBuild.getStartTimeInMillis();
  def end = start + currentBuild.getExecutor().getElapsedTime();
// replace time
  perfResult = String.format(perfResult, start, end);


 //build the string to be added as description.
  def link = "<a href='%s'>%s</a><br/>";
 def sb = new StringBuilder();
 sb.append(String.format(link, perfResult, "Grafana Performance Result"));

 // set build description
   currentBuild.setDescription(sb.toString());
    }

1 Ответ

0 голосов
/ 04 апреля 2019

сначала - вы должны прочитать ошибку. в этом есть ответ:

Нет подписи метода:

org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper.getExecutor()

применимо для типов аргументов: () значения: []

поиск в документации по классу org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper:

https://javadoc.jenkins.io/plugin/workflow-support/org/jenkinsci/plugins/workflow/support/steps/build/RunWrapper.html

и в этом классе нет метода getExecutor().

однако существует метод getRawBuild(), который возвращает https://javadoc.jenkins.io/hudson/model/Run.html

так что, вероятно, это будет работать для вас:

currentBuild.getRawBuild().getExecutor().getElapsedTime()
...