使用Jenkins的Flat属性的Artifactory插件时出错

时间:2016-09-15 09:56:08

标签: groovy jenkins-plugins jenkins-pipeline artifactory

詹金斯2.7.2管道工作不适用于平面财产'在下载架构。

从通用Artifactory存储库(rb-artifactory)下载工件时,Jenkins管道作业正在抛出此错误:

java.lang.NoClassDefFoundError: org/eclipse/jgit/util/StringUtils 

我请求您的支持以解决此错误。

我们有以下下载架构:

def ar_download_logs = """{
  "files": [
    {
      "pattern": "${ar_url}/out/*",
      "flat": "1",
      "target": "logs/"
    }
  ]
}"""
def buildInfo1 = ar_server.download(ar_download_logs)

"flat": "1"在从String转换为Boolean时导致问题,它使用StringUtil并导致exception java.lang.NoClassDefFoundError

如何在Artifactory插件的某些 StringUtils 包之间建立依赖关系:2.5.1使用字符串到布尔转换?

如果您查看发生异常的以下源代码,那么它是由堆栈跟踪给出的 GenericDownloadExecutor.java 的第79行。

https://github.com/jenkinsci/artifactory-plugin/blob/master/src/main/java/org/jfrog/hudson/pipeline/executors/GenericDownloadExecutor.java

boolean isFlat = file.getFlat() != null && StringUtils.toBoolean(file.getFlat());

我还想分享一个用于该项目的插件:

  • Artifactory插件:2.5.1
  • Groovy:1.29
  • 常春藤插件:1.26
  • 管道:2.2
  • Pipeline:Groovy:2.7
  • 管道:工作:2.3

3 个答案:

答案 0 :(得分:5)

安装git plugin解决了这个问题 为了使其生效,必须在安装后重新启动Jenkins。

答案 1 :(得分:4)

此问题的修复程序包含在Artifactory插件2.8.0中: https://www.jfrog.com/jira/browse/HAP-829

答案 2 :(得分:0)

根据其他回复,您有两个选择:

在这两个选项中,您需要更新或安装插件,因此需要重新启动Jenkins安装.Restart Jenkins通常需要几分钟。

我建议您更新Artifactory plugin以解决此问题和未来可能的问题。