tomcat启动404错误(tomcat网页404错误解决)

tomcat启动404错误(tomcat网页404错误解决)

  Tomcat是常见的免费的web服务器,非常好用,但是经常会出现各种错误。

  (Tomcat资源:

  

  运行Tomcat/bin/startup.bat时闪退,可以在startup.bat最后加入一句pause,使运行窗口不关闭,便于排错(调试完成记得删除)

  一、 没有正确定义JRE_HOME环境变量。

  Error:the JRE_HOME environment variable is not defined correctly

  如图:

  解决办法:

  重新检查JDK配置。

  配置方法:

  找到“我的电脑”,右键打开属性->高级系统设置->环境变量:

  配置JAVA_HOME:

  修改变量 Path ,在最前面加上 %JAVA_HOME%bin;

  (这是win10如果是其他版本的加在Path前面即可)

  (在命令行中运行java -version 检查当前JDK是否配置成功)

  二、无法创建Java虚拟机

  出现如下错误:

  Error: Could not create the Java Virtual Machine.

  Error: A fatal exception has occurred. Program will exit.

  错误:无法创建Java虚拟机。

  错误:发生致命异常。程序将会退出。

  解决办法:

  这个可能是 jdk 与 tomcat 版本不一致 导致的,可以尝试升级tomcat版本,或者降低 /升级jdk版本。查找对应的版本再安装尝试一下。

  (在命令行中运行java -version 可以检查当前JDK的版本)

  三、CATALINA_HOME,CATALINA_BASE的配置错误

  出现如下错误:

  解决办法:

  在环境变量中删除CATALINA_HOME,CATALINA_BASE的配置(如果没有在环境变量里配置过,那么会自动采用bin目录的父目录)。

  或者把CATALINA_HOME、CATALINA_BASE设置为正确的TOMCAT目录。

  环境参数正确会显示如下图:

  (“D:tomcat”是我的tomcat文件路径)

  四:端口已被占用

  端口已被占用(我简单以80端口为例,请根据实际情况判断)

  Error:Address already in use: JVM_Bind :80

  比如:如果你先单独打开了tomcat,又试图在eclipse或IDEA里启动它,相当于是启动两次,当然端口会被占用了。

  解决办法:

  在运行中输入cmd:

  输入:netstat -ano|findstr “80” 查看 端口号包含”80″的占用情况(如图有三个端口同时开启)

  输入:tasklist|findstr “1828” 查找端口使用者(为java.exe)

  输入taskkill /f /t /im java.exe 终止对应进程

  五、缺少APR

  出现如下:

  The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path:

  出现这种情况是这表示没有找到APR。

  解决办法:

  去

   下载编译好的tcnative-1.dll文件拷贝至jdkbin下,再启动就可以成功加载APR了。

  (在我给的Tomcat资源里面有:

  

  六:JDK不兼容

  出现如下:

  NOTE: Picked up JDK_JAVA_OPTIONS: –add-opens=java.base/java.lang=ALL-UNNAMED –add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED

  JDK不兼容:解决办法同第二点,检查tomcat和JDK版本

  七、持久化异常

  出现Exception loading sessions from persistent storage

  该问题的原因是tomcat的session持久化机制引起的,在

  %TOMCAT%/work/Catalina/localhost/session.ser 这个文件里,因为tomcat非正常关闭,所以这个文件没有正确地结束(无EOF标记)

  解决办法:

  1、只需要删除 session.ser文件即可。

  2、关闭tomcat的持久化功能,就能一劳永逸的解决这个问题。具体为修改conf下的server.xml文件。在项目的context间加入一句代码

  八、给tomcat指定特定的JDK

  修改bin文件夹下面的setclasspath.bat文件

  set “JRE_HOME=%JAVA_HOME%”

  修改为:

  set “JRE_HOME=E:Javajdk1.8.0.65”

  (根据自己的JDK路径修改)

  九、修改端口:

  打开…confserver.xml

  修改“8080”处端口号(tomcat默认端口为8080)

  十、利用tomcat部署:

  将项目文件放入tomcatwebappsROOT

  (此处简单以test.html为例)

  如出现404错误:请检查文件是否存在/端口是否正确/环境变量是否无误/Tomcat是否启动/访问资源和文件名是否正确……等

推荐阅读