java - 处理程序调度失败;嵌套异常是 java.lang.NoClassDefFoundError: org/rundeck/plugin/scm/git/GitImportPlugin$_getStatusInternal_closure2
问题描述
经过几个小时的运行甲板嗡嗡声后,我在尝试查看作业时收到以下错误。
重启tomcat即可解决问题。
- 我已经配置了 git-import。它已被证明工作正常。
- Rundeck 在 AWS 中运行
- 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
- 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
- Rundeck 目录 RBASE 位于共享 NFS 挂载 (Amazon EFS)
- Rundeck 项目是使用 rundeck cli 配置的
文件:
- catalina.out - 粘贴有效期至 2020 年 1 月 27 日
请参阅下面的错误消息:
发生错误
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
解决方案
推荐阅读
- python - Python:当我们在特定列中有重复项时合并行
- javascript - How to convert an object with arrays as values to an array of objects
- java - cucumber-junit-platform-engine 中的@CucumberOptions
- javascript - React.js:数据更新导致在 iOS 上滚动到顶部
- docker - 我可以使用 keycloak 使用 traefik 验证具有 oauth 支持的 docker 服务吗?
- nginx - 为什么 Nginx 位置 /dir/ 不适用于 /dir/ 本身,但适用于任何 /dir/file?
- docker - 使 Docker 容器只能从特定 IP/IP 子网访问
- deep-learning - 反向传播是否使用优化函数来更新权重?
- r - R 从 Eikon 云中检索信息
- sql - 在数据仓库中使用代理键的优缺点