1 问题简介
最近遇到一个问题,在windows系统下部署tomcat项目,cmd命令启动时频繁报错,比如Unsupported major.minor version 52.0,且cmd界面上打印出来的日志为乱码;最后在关闭tomcat时发现关不掉,出现项目挂起但是无法关闭的问题。
2 Unsupported major.minor version 52.0
分析:比较普遍的问题,简单来说,就是执行代码的jdk版本低于编译的jdk版本,对于Spring项目来说,排查步骤如下:
查看项目中的jdk版本;
修改Java Build Path:Properties –> Java Build Path –> Libraries 修改Project Facets:Properties –> Project Facets
查看jdk版本与spring版本的兼容问题;
查看tomcat配置文件中的jdk版本,如发现版本不符可以转到配置文件中设置。
Window版本Tomcat:
到bin下的setclasspath.bat文件,在文件的开始处添加如下代码:
set JAVA_HOME=D:Java安装目录jdk1.8.0_121 set JRE_HOME=D:Java安装目录jre1.8.0.121
3 cmd界面出现乱码问题
修改 conf/logging.properties 文件: java.util.logging.ConsoleHandler.encoding = GBK
4 程序挂起无法关闭的问题
这里初步看起来之所以关闭不掉,是运行时出现错误或者连接超时问题,解决方法是:
netstat –aon 可以清楚地看到当地端口的情况; 任务管理器中找到相关的PID,然后强制关闭。 补充: Windows下查看进程及结束进程命令 查看占用8080端口的进程号:netstat –aon | findstr "8080" 查看占用端口的PID对应的具体进程信息:tasklist | findstr "PID号" 杀掉进程:tskill PID号 Linux下查看进程及结束进程命令 查看占用8080端口的进程号:netstat -lnp | grep 8080 杀掉进程:kill -9 PID号
参考资料:
https://blog.csdn.net/hchhan/article/details/81106404 Unsupported major.minor version 52.0解决办法



