首页 > 解决方案 > 处理程序调度失败;嵌套异常是 java.lang.NoClassDefFoundError: org/rundeck/plugin/scm/git/GitImportPlugin$_getStatusInternal_closure2

问题描述

经过几个小时的运行甲板嗡嗡声后,我在尝试查看作业时收到以下错误。

重启tomcat即可解决问题。

  1. 我已经配置了 git-import。它已被证明工作正常。
  2. Rundeck 在 AWS 中运行
  3. Tomcat 在主机上本地运行。
Server version: Apache Tomcat/9.0.27
Server built:   Oct 7 2019 09:57:22 UTC
Server number:  9.0.27.0
OS Name:        Linux
OS Version:     3.10.0-1062.4.3.el7.x86_64
Architecture:   amd64
JVM Version:    1.8.0_232-b09
JVM Vendor:     Oracle Corporation
  1. Rundeck 是从 war 文件中下载的
jvm:
  name: OpenJDK 64-Bit Server VM
  vendor: Oracle Corporation
  version: 1.8.0_232
  implementationVersion: 25.232-b09

healthcheck:
  href: https://example.com/rundeck/api/33/metrics/healthcheck
  contentType: application/json

executions:
  active: true
  executionMode: active

os:
  arch: amd64
  name: Linux
  version: 3.10.0-1062.4.3.el7.x86_64

stats:
  uptime:
    duration: 253480944
    unit: ms
    since:
      epoch: 1577160408725
      unit: ms
      datetime: 2019-12-24T04:06:48Z

  cpu:
    loadAverage:
      unit: percent
      average: 0.4

    processors: 2

  memory:
    unit: byte
    max: 4277534720
    free: 162153160
    total: 536170496

  scheduler:
    running: 0
    threadPoolSize: 10

  threads:
    active: 62

threadDump:
  href: https://example.com/rundeck/api/33/metrics/threads
  contentType: text/plain

metrics:
  href: https://example.com/rundeck/api/33/metrics/metrics?pretty=true
  contentType: application/json

rundeck:
  version: 3.1.2-20190927
  build: 3.1.2-20190927
  buildGit: v3.1.2-0-gec89e59
  node: example.com
  base: /opt/rundeck
  apiversion: 33
  serverUUID:

timestamp:
  epoch: 1577413889669
  unit: ms
  datetime: 2019-12-27T02:31:29Z
  1. Rundeck 目录 RBASE 位于共享 NFS 挂载 (Amazon EFS)
  2. Rundeck 项目是使用 rundeck cli 配置的

文件:

请参阅下面的错误消息:

发生错误

Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/rundeck/plugin/scm/git/GitImportPlugin$_getStatusInternal_closure2

错误 500:内部服务器错误

URI
    /rundeck/project/batch_env_devl/jobs
Class
    java.lang.ClassNotFoundException
Message
    Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/rundeck/plugin/scm/git/GitImportPlugin$_getStatusInternal_closure2
Caused by
    org.rundeck.plugin.scm.git.GitImportPlugin$_getStatusInternal_closure2
    Line | Method
->>  217 | getStatusInternal in org.rundeck.plugin.scm.git.GitImportPlugin
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    495 | actionsAvailableForContext in     ''
|   1093 | importPluginActions in rundeck.services.ScmService
|    538 | jobsFragment     in rundeck.controllers.MenuController
|    303 | jobs . . . . . . in     ''
|    223 | invoke           in org.grails.core.DefaultGrailsControllerClass$MethodHandleInvoker
|    188 | invoke . . . . . in org.grails.core.DefaultGrailsControllerClass
|     90 | handle           in org.grails.web.mapping.mvc.UrlMappingsInfoHandlerAdapter
|    967 | doDispatch . . . in org.springframework.web.servlet.DispatcherServlet
|    901 | doService        in     ''
|    970 | processRequest . in org.springframework.web.servlet.FrameworkServlet
|    861 | doGet            in     ''
|    846 | service . . . .  in     ''
|     55 | doFilterInternal in org.springframework.boot.web.filter.ApplicationContextHeaderFilter
|     67 | doFilterInternal in org.rundeck.grails.plugins.securityheaders.RundeckSecurityHeadersFilter
|    317 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    127 | invoke . . . . . in org.springframework.security.web.access.intercept.FilterSecurityInterceptor
|     91 | doFilter         in     ''
|    331 | doFilter . . . . in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    114 | doFilter         in org.springframework.security.web.access.ExceptionTranslationFilter
|     64 | doFilter . . . . in grails.plugin.springsecurity.web.UpdateRequestContextHolderExceptionTranslationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     54 | doFilterInternal in grails.plugin.springsecurity.web.filter.GrailsHttpPutFormContentFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     54 | doFilter . . . . in grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    158 | doFilter . . . . in org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    170 | doFilter . . . . in org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    200 | doFilter . . . . in org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     64 | doFilter . . . . in grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    105 | doFilter . . . . in org.springframework.security.web.context.SecurityContextPersistenceFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     58 | doFilter . . . . in grails.plugin.springsecurity.web.SecurityRequestHolderFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    214 | doFilterInternal in org.springframework.security.web.FilterChainProxy
|    177 | doFilter         in     ''
|     77 | doFilterInternal in org.grails.web.servlet.mvc.GrailsWebRequestFilter
|     67 | doFilterInternal in org.grails.web.filters.HiddenHttpMethodFilter
|    130 | doFilter . . . . in org.springframework.boot.web.support.ErrorPageFilter
|     66 | access$000       in     ''
|    105 | doFilterInternal in org.springframework.boot.web.support.ErrorPageFilter$1
|    123 | doFilter         in org.springframework.boot.web.support.ErrorPageFilter
|   1149 | runWorker . . .  in java.util.concurrent.ThreadPoolExecutor
|    624 | run              in java.util.concurrent.ThreadPoolExecutor$Worker
^    748 | run . . . . . .  in java.lang.Thread

Caused by ClassNotFoundException: org.rundeck.plugin.scm.git.GitImportPlugin$_getStatusInternal_closure2
->>   58 | loadClass        in com.dtolabs.rundeck.core.plugins.LocalFirstClassLoader
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|     44 | loadClass        in     ''
|    217 | getStatusInternal in org.rundeck.plugin.scm.git.GitImportPlugin
|    495 | actionsAvailableForContext in     ''
|   1093 | importPluginActions in rundeck.services.ScmService
|    538 | jobsFragment     in rundeck.controllers.MenuController
|    303 | jobs . . . . . . in     ''
|    223 | invoke           in org.grails.core.DefaultGrailsControllerClass$MethodHandleInvoker
|    188 | invoke . . . . . in org.grails.core.DefaultGrailsControllerClass
|     90 | handle           in org.grails.web.mapping.mvc.UrlMappingsInfoHandlerAdapter
|    967 | doDispatch . . . in org.springframework.web.servlet.DispatcherServlet
|    901 | doService        in     ''
|    970 | processRequest . in org.springframework.web.servlet.FrameworkServlet
|    861 | doGet            in     ''
|    846 | service . . . .  in     ''
|     55 | doFilterInternal in org.springframework.boot.web.filter.ApplicationContextHeaderFilter
|     67 | doFilterInternal in org.rundeck.grails.plugins.securityheaders.RundeckSecurityHeadersFilter
|    317 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    127 | invoke . . . . . in org.springframework.security.web.access.intercept.FilterSecurityInterceptor
|     91 | doFilter         in     ''
|    331 | doFilter . . . . in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    114 | doFilter         in org.springframework.security.web.access.ExceptionTranslationFilter
|     64 | doFilter . . . . in grails.plugin.springsecurity.web.UpdateRequestContextHolderExceptionTranslationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     54 | doFilterInternal in grails.plugin.springsecurity.web.filter.GrailsHttpPutFormContentFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     54 | doFilter . . . . in grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    158 | doFilter . . . . in org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    170 | doFilter . . . . in org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    200 | doFilter . . . . in org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     64 | doFilter . . . . in grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    105 | doFilter . . . . in org.springframework.security.web.context.SecurityContextPersistenceFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|     58 | doFilter . . . . in grails.plugin.springsecurity.web.SecurityRequestHolderFilter
|    331 | doFilter         in org.springframework.security.web.FilterChainProxy$VirtualFilterChain
|    214 | doFilterInternal in org.springframework.security.web.FilterChainProxy
|    177 | doFilter         in     ''
|     77 | doFilterInternal in org.grails.web.servlet.mvc.GrailsWebRequestFilter
|     67 | doFilterInternal in org.grails.web.filters.HiddenHttpMethodFilter
|    130 | doFilter . . . . in org.springframework.boot.web.support.ErrorPageFilter
|     66 | access$000       in     ''
|    105 | doFilterInternal in org.springframework.boot.web.support.ErrorPageFilter$1
|    123 | doFilter         in org.springframework.boot.web.support.ErrorPageFilter
|   1149 | runWorker . . .  in java.util.concurrent.ThreadPoolExecutor
|    624 | run              in java.util.concurrent.ThreadPoolExecutor$Worker
^    748 | run . . . . . .  in java.lang.Thread

标签: javaclassnotfoundexceptionrundeck

解决方案


推荐阅读