java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable

时间:2021-06-13 15:39:40
初次使用struts2,遇到了一个很奇怪的异常。我只是运用struts2做了一个简单的登录界面,可以按照预想的结果正常运行,
没有任何错误,但是,将项目remove出Tomcat时,居然报异常,

java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable
at org.apache.struts2.dispatcher.Dispatcher.cleanup(Dispatcher.java:254)
at org.apache.struts2.dispatcher.FilterDispatcher.destroy(FilterDispatcher.java:233)

。。。。。。
然后再重新部署,发现原来的程序竟运行不了了,也报错:
javax.management.RuntimeErrorException: Error thrown in preDeregister method
。。。。。。。。
Caused by: java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable
。。。。。
然后我把Tomcat关闭,再重新部署,发现异常又消失了,程序依旧正常,然后,我反复地部署,关闭,打开TOMCAT,我发现这竟然不是偶然,居然每次都出现上述情况,只要将项目remove出tomcat就报异常,必须重启tomcat才可以恢复正常

12 个解决方案

#1


请问楼主怎么解决的

#2


我现在也遇到了,什么原因啊 java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable

#3


jar包冲突问题

#4


哪两个jar冲突了

#5


我也遇到了一样的问题,时好时坏,求解

#6


如果楼主用的是myeclipse的话,remove完之后,可以看一下tomcat安装目录下的webapp文件夹里面还有没有那个项目或有没有两个那个项目(即有一个备份的),如果是其中一种情况,那可能就会报错。
具体部署原理,可以参考下面链接
http://blog.csdn.net/u012367513/article/details/38469421

#7


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#8


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#9


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#10


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限

#11


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限

#12


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限

#1


请问楼主怎么解决的

#2


我现在也遇到了,什么原因啊 java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable

#3


jar包冲突问题

#4


哪两个jar冲突了

#5


我也遇到了一样的问题,时好时坏,求解

#6


如果楼主用的是myeclipse的话,remove完之后,可以看一下tomcat安装目录下的webapp文件夹里面还有没有那个项目或有没有两个那个项目(即有一个备份的),如果是其中一种情况,那可能就会报错。
具体部署原理,可以参考下面链接
http://blog.csdn.net/u012367513/article/details/38469421

#7


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#8


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#9


可能是jar包冲突了  还有可能是你的tomcat端口号被占用了

#10


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限

#11


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限

#12


应该是没有remove干净,在tomcat中,还余留有一部分你原来项目的东西,可能原因是你开发用的用户不是系统管理员的权限