现象:
tomcat安装好了,准备部署Web项目了,启动tomcat,发现没有反应。
虽然显示了Tomcat started。可是这个 started不等同于 success,当咱们打开浏览器访问8080端口的时候,却发现咱们的tomcat并无被启动。
网上大多的教程都是教咱们去查端口占用,或者是配置jdk环境。但其实应该从缘由上进行分析,这样才能有效的推导出结果
(我最开始的错误就是有一个有错误的war包,致使tomcat启动不起来,这种若是按网上的教程是发现不出来的)
tomcat的logs目录下,存放着它全部的日志,在tomcat启动时的日志,是存储在catalina.***.log中的,***表明日期,咱们能够找到当前日期的catalina.***.log,经过日志信息来定位问题
端口占用:
这个时候咱们能够先查出来占用端口的线程:
而后再杀掉该线程便可:
文件拼写错误:
经过错误信息咱们能够看出,这个问题产生的缘由是文件第二行存在拼写错误,咱们打开文件,发现文件的第一行有一个空格,删掉首行空格便可。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0"
metadata-complete="true">
<description> Servlet Example. </description>
<display-name> MyServlet Example </display-name>
<request-character-encoding>UTF-8</request-character-encoding>
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myServlet</servlet-name>
<url-pattern>/myservlet</url-pattern>
</servlet-mapping>
</web-app>
解决问题的第一步应该是定位问题。