【问题标题】:How to compile @Library @NonCPS using gradle in jenkins如何在 jenkins 中使用 gradle 编译 @Library @NonCPS
【发布时间】:2018-03-19 14:33:15
【问题描述】:

我需要验证管道脚本(脚本化管道)中的代码更改,但在编译 @Library 和 @NonCPS 行时遇到问题。

在 gradle 中进行任务编译时,出现错误:

unable to resolve class Library ,  unable to find class for annotation @Library('someLibrary') _

unable to resolve class NonCPS ,  unable to find class for annotation @NonCPS

我尝试在依赖项中包含一些外部插件,如下所示:

dependencies {
    compile 'org.jenkins-ci.plugins.workflow:workflow-cps:2.41@jar'
    compile 'org.jenkins-ci.plugins.workflow:workflow-cps-global-lib:2.4@jar'
    compile 'org.jenkins-ci.plugins:pipeline-utility-steps:1.5.0@jar'
    compile 'org.jenkins-ci.plugins.workflow:workflow-support:2.14@jar'
    compile 'org.codehaus.groovy:groovy-all:2.3.11'
    compile "org.jenkins-ci.plugins:job-dsl-core:${jobDslPluginVersion}"
    compile 'org.jenkins-ci.main:jenkins-core:1.609.3'
    compile 'org.jenkins-ci.plugins:build-pipeline-plugin:1.5.6'
    compile 'org.jenkins-ci.plugins:pipeline-build-step:2.5.1'
    compile 'org.jenkins-ci.plugins.pipeline-stage-view:pipeline-stage-view:2.9'
    compile 'org.jenkins-ci.plugins.workflow:workflow-cps:2.41'
    compile 'org.jenkins-ci.plugins.workflow:workflow-cps-global-lib:2.4'
    compile 'org.jenkins-ci.plugins:pipeline-utility-steps:1.5.0'
    compile 'org.jenkins-ci.plugins.workflow:workflow-support:2.14'
}

但没有按预期工作。

我是 gradle 新手,所以我可能缺少一些理解。

【问题讨论】:

  • import com.cloudbees.groovy.cps.NonCPS 为@NonCPS 错误工作

标签: jenkins gradle groovy shared-libraries jenkins-pipeline


【解决方案1】:

NonCPS 注解类型来自com.cloudbees.groovy.cps 包中的开源cloudbees/groovy-cps 存储库。

您可以添加对 compile('com.cloudbees:groovy-cps:1.22') 之类的编译依赖项。

【讨论】:

  • 但是@Library(String)怎么办?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-06
  • 2011-12-08
  • 1970-01-01
  • 1970-01-01
  • 2021-03-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多