release系统打包报错的解决过程

报错信息:

INFO: Illegal access: this web application instance has been stopped already.  Could not load org.apache.commons.pool.impl.CursorableLinkedList$Cursor.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1599)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)
        at org.apache.commons.pool.impl.CursorableLinkedList.cursor(CursorableLinkedList.java:305)
        at org.apache.commons.pool.impl.GenericObjectPool.evict(GenericObjectPool.java:1508)
        at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1720)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)

问运维工程师是否还有其他报错信息,答无。

根据该报错信息搜索,有一篇文章介绍说,和tomcat的sever.xml和reloadable有关。

原因是因为在tomcat重启的时候,之前的tomcat的线程还没有完全关闭,最新启动tomcat就会报这个异常,只要把tomcat的server.xml 中的reloadable="true" 改成false就OK存在于Context节点中,以下是我截取的Tomcat中文一个文档中的注释:

Context(表示一个web应用程序,通常为WAR文件,关于WAR的具体信息见servlet规范) docBase 应用程序的路径或者是WAR文件存放的路径
path 表示此web应用程序的url的前缀,这样请求的url为http://localhost:8080/path/****
reloadable 这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起tomcat的情况下改变应用程序

进一步检查sever.xml该属性配置正常。

server.log中的报错是easy-schedule的quartz的triggerEntity配置有问题。oa-deploy下的spring-quartz.xml的配置和sys-quartz(easy-schedule)的sping.xml的配置不匹配。

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘oaJobexecutor‘ defined in URL [jar:file:/data/phicomm-oa/tomcat-9999/webapps/oa/WEB-INF/lib/sys-quartz-0.0.1-SNAPSHOT.jar!/com/fx/oa/module/sys/quartz/server/META-INF/spring.xml]: Cannot resolve reference to bean ‘jobDelegate26‘ while setting bean property ‘jobDelegates‘ with key [TypedStringValue: value [jobDelegate26], target type [null]]; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named ‘jobDelegate26‘ is defined
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueResolver.java:378)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:161)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
        ... 29 more

修复这个问题后,重新启动后系统正常。

时间: 2024-10-09 21:49:30

release系统打包报错的解决过程的相关文章

tomcat中安装JDK报错详细解决过程

在安装tomcat时解压安装JDK时出现如下报错:[[email protected] src]# wget 'http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-i586.tar.gz'--2016-01-18 04:21:56--  http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-i586.tar.gz正在解析主机 dow

ffmpeg Operation not permitted 报错的解决过程记录

问题重现 由于视频的录制过程出现了一些小问题,需要重新将视频文件切割和合并,找了几个视频编辑软件来做这个事情,最终的结果都不是特别满意,当时已经挺晚的了,本来打算上床睡觉第二天再去想辙,从椅子上起身的时候忽然想到了 ffmpeg 这个工具,挺久之前在工作中用它做了一个视频切割相关的功能,于是赶紧把它安装和配置好,视频切割的时候倒还顺利,在进行视频合并的时候出现了题目中的这个问题: Operation not permitted 我把当时的相关文件都放在这里,如下图所示: 我需要把图中 27-en

Mac 升级10.10 Yosemite系统 brew 报错无法使用解决办法

随着水果公司发布最新系统,想尝鲜的同学们相信早已经装上体验了一把吧,可能个别同学使用 brew 的时候会报这个错误: /usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory /usr/local/bin/brew: line 23: 

20170514002Oracle 11g R2安装过程中遇到的报错及解决办法

Oracle 11g R2安装过程中遇到的报错及解决办法 1.提示Check if the DISPLAYvariable is set.    Failed<<<< 解决方案: #xhost +  //切换到root用户输入 #su – Oracle  //切换到oracle用户 $./runInstaller  //执行安装程序 xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB上的应用程序时, 做为应用程序来说,hostA

ios替换app启动图片时系统报错的解决办法

ios替换app启动图片时系统报错的解决办法:我个人建议是在开发时候经常行的保存项目,并且在修改项目图标图片.app启动图片前,一定要先备份一份没有添加这两项图片的项目. 如果您的项目已经开发完成了,进入到发布前添加项目图标.app启动图片的时候,一定要确定了这两项的所有图片不会更改了再去添加,否则更改已经添加好的加项目图标.app启动图片就会报错, 如果您报错了,百度之后也没有解决办法,那么就尝试在已经备份的项目中重新去添加图片就可以了.

HP-UX系统频繁报错问题排查

1.错误信息描述 在重庆万州进行设备巡检时,发现CCS01A(HP UNIX B.11.31)服务器终端窗口频繁弹出报错,查看dmesg输出信息和OLDsyslog.log全是该报错以及/var分区满了的信息,但是syslog.log在很久之前就没有再被写入内容,是空文件. # 终端窗口频繁出现的报错信息 esmd: System Error: The EVM daemon has failed and cannot be restarted 2.syslog.log为空文件的问题解决办法 重启

Android打包报错 Export aborted because fatal lint errors were found. These are listed in the Lint View

打包时报如下错误: Export aborted because fatal lint errors were found. These are listed in the Lint View. Either fix these before running Export again,or turn off"Run full error check when exporting app" in the Android > Lint Error Checking preferenc

64位系统下报错:cannot load OCI DLL,126

64位系统下报错:cannot load OCI DLL,126 解决方法:navicat 菜单中 -工具->选项->OCI 选择oracle安装目录下bin里面的oci.dll 查看上述链接页面提示,Navicat only support 32-bit instant client, 因此,尽管我们安装了64位的Oracle,但由于Navicat仅支持32位的,因此我们还需下载一个oracle的32位的客户端, 下载地址:http://www.oracle.com/technetwork/

Loadrunner参数化连接oracle、mysql数据源报错及解决办法

Loadrunner参数化连接oracle.mysql数据源报错及解决办法 (本人系统是Win7 64,  两位小伙伴因为是默认安装lr,安装在 最终参数化的时候,出现连接字符串无法自动加载出来: 最后通过安装在,问题到此解决 1.通过数据库连接参数化大量数据,电脑本地已经成功安装了数据库驱动,且本地可以配置数据源成功,在loadrunner 中配置数据源却找不到对应的数据库驱动. ----A:检查当前loadrunner工具的版本,是32位还是64位(目前还没有64位的),32位是不能安装64