问题:
在以Tomcat的作为的Web容器,启动的Java Web工程时,遇到下面问题:org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException网络环境:JSP文件在视窗端编译启动访问成功,部署到Linux访问不到。
![ 这里写图片描述] (https://img-blog.csdn.net/20160724231556681 )
##解决步骤:1,更换JDK编译,从JDK8,JDK7,JDK6到一次尝试,均是Windows端可行,Linux端异常; 2,清理Linux端其他工程(5个工程同时运行),依然异常; 3,把Windows端的tomcat上的文件,拷贝到Linux端,包括bin,lib文件夹;在页面访问成功,没有异常。
总结:1,JSP文件,受生产环境影响,不同的生产环境会产出不同的结果; 2,部署在Windows,Linux端的工程里的JSP文件, .bin文件,存放各种不同平台开启与关闭的Tomcat的脚本文件;一般的Tomcat的版本里的箱文件,都包含在Windows,Linux平台开启与关闭的脚本文件,部署在Windows和Linux端的Tomcat的可用一个同一个版本;
4、存Tomcat与web应用的Jar包,JSP文件依赖于servlet.jar和jsp-api.jar;不同的Tomcat版本,如:(Apache-Tomcat 7.0.23和Apache-Tomcat 7.0.33),都会造成影响;部署在Windows、Linux端的Tomcat可用一个同一个版本;
注:同一大版本号,不同小版本号的JDK和Tomcat均会造成Windows和Linux的差异;最佳方案是JDK和Tomcat最初就保持相同的小版本号;