• JDK和Tomcat部署时,版本不同的问题解决


    问题:

    在以Tomcat作为Web容器,启动java Web工程时,遇到下面问题:org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException。网络环境:JSP文件在Windows端编译启动访问成功,部署到Linux访问不到。
    
    • 1
    • 2

    这里写图片描述

    解决步骤:

    1、更换JDK编译,从JDK8,JDK7,JDK6到一一尝试,均是Windows端可行, Linux端异常;

    2、清理Linux端其他工程(5个工程同时运行),依然异常;

    3、把Windows端的tomcat上的文件,拷贝到Linux端,包括bin,lib文件夹;在页面访问成功,没有异常。

    总结:

    1、JSP文件,受生产环境影响,不同的生产环境会产出不同的结果; 
    2、部署在Windows、Linux端的工程里的JSP文件,受bin文件和lib文影响; 
    3、bin文件,存放各种不同平台开启与关闭Tomcat的脚本文件;一般的Tomcat版本里的bin文件,都包含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可用一个同一个版本;(特别注意要检查工程目录和编译目录是否存在以上相同的jar包,防止加载到错误的文件)

    注:同一大版本号,不同小版本号的JDK和Tomcat均会造成Windows和Linux的差异;最佳方案是JDK和Tomcat最初就保持相同的小版本号;

  • 相关阅读:
    eclipse上传下载github
    GitHub整合idea 上传和下载
    Git安装与配置
    第八天springboot整合redis
    第七天.spring boot 整合mybatis并使用Junit进行测试
    ssm的各种配置资源
    Git相关软件下载
    Eclipse上传项目到GitHub
    SpringBoot使用spring data jpa及在页面yaml中显示
    spring boot 整合mybatis及使用Junit进行测试
  • 原文地址:https://www.cnblogs.com/toSeeMyDream/p/8427893.html
Copyright © 2020-2023  润新知