Idea中运行Tomcat servlet程序出现HTTP Status 500错误的解决方案
问题描述: 在Idea中,当配置好Tomcat后,写出第一个Servlet程序执行时,在浏览器中输入路径localhost:8080/MyServlet/demo1(其中,MyServlet为根目录,demo1为虚拟目录),显示结果如下图所示:
先说原因:Tomcat版本与jdk版本不匹配导致
我的错误情况: 经检查发现,Idea2019版安装时会自动携带jdk且版本为jdk11,jdk目录为D:\IDEA\IntelliJ IDEA 2019.3.3\jbr,我安装的Tomcat版本为Tomcat8.5.31,经与下表对照发现,jdk的版本大于Tomcat版本并未发现问题。
那错误原因究竟是什么呢?
在经过仔细筛查,发现在Idea的输出控制台上显示的结果如下图:这里Tomcat运行的jdk版本竟然不是jdk11,再经过进一步确认,查看Tomcat运行的jdk版本
果然,是系统的JAVA_HOME变量配置出现问题,我的错误原因是我起初使用的Ide是eclipse,需要配置jdk环境变量,当时的配置的jdk版本为jdk1.8
而转向使用IDEA并不需要配置jdk环境变量。Tomcat运行需要用到系统的jdk环境变量,此时的系统的jdk版本为1.8,而jdk1.8与Tomcat8.5.31不匹配。
解决方式: 把系统变量更改为IDEA目录下自带的jdk版本jdk11,然后重启IDEA即可。
运行成功: