项目部署到tomcat因Myeclispe版本升级造成的问题及解决。
解决
java.lang.NoClassDefFoundError: org/apache/commons/…等包缺失
以及
Invalid class loader hierarchy. You have more than one version of ‘org.apache.commons.logging.Log’ visible, which is not allowed.
Myeclispe2015在部署web项目时只将项目webroot/WEB-inf/lib下的包部署到tomcat/webapps/项目名称/WEB-INF/lib里
Myeclispe2014以及之前部分版本部署时将项目/webroot/WEB-inf/lib以及项目/lib下的包都打包部署到tomcat/webapps/项目名称/WEB-INF/lib里
因此,用Myeclispe2015运行tomcat可能会出现相关包缺失的错误(项目/lib下包没有部署到tomcat)
解决方法是将项目webroot/WEB-inf/lib以及项目lib下的包都打包到tomcat/webapps/项目名称/WEB-INF/lib里。
路径不要弄错,若打包到tomcat/lib下会出现两个包冲突的问题
Invalid class loader hierarchy. You have more than one version of ‘org.apache.commons.logging.Log’ visible, which is not allowed.
下一步还可能出现
Unable to read TLD “META-INF/tlds/struts-bean.tld” from JAR file
解决方法:
https://blog.csdn.net/xiaohanshenchu/article/details/8348166