zoukankan      html  css  js  c++  java
  • 为什么我的tomcat启动不起来?

    现象:

      tomcat安装好了,准备部署Web项目了,启动tomcat,发现没有反应。
      虽然显示了Tomcat started。但是这个 started不等同于 success,当我们打开浏览器访问8080端口的时候,却发现我们的tomcat并没有被启动。
    网上大多的教程都是教我们去查端口占用,或者是配置jdk环境。但其实应该从原因上进行分析,这样才能有效的推导出结果
    (我最开始的错误就是有一个有错误的war包,导致tomcat启动不起来,这种如果按网上的教程是发现不出来的)
      tomcat的logs目录下,存放着它所有的日志,在tomcat启动时的日志,是存储在catalina.***.log中的,***代表日期,我们可以找到当前日期的catalina.***.log,通过日志信息来定位问题

    端口占用:

      这个时候我们可以先查出来占用端口的线程:
    lsof -nP -i:8080
      然后再杀掉该线程即可:
    kill -9 pid

    文件拼写错误:

      通过错误信息我们可以看出,这个问题产生的原因是文件第二行存在拼写错误,我们打开文件,发现文件的第一行有一个空格,删掉首行空格即可。
     
    <?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>
    解决问题的第一步应该是定位问题。
     

  • 相关阅读:
    关于JSON可能出现的错误,待更/todo
    mongoose的安装与使用(书签记录) 2017
    HTTP的学习记录3--HTTPS和HTTP
    HTTP的学习记录(二)头部
    HTTP(一)概述
    LeetCode 455. Assign Cookies
    LeetCode 453. Minimum Moves to Equal Array Elements
    LeetCode 448. Find All Numbers Disappeared in an Array
    LeetCode 447. Number of Boomerangs
    LeetCode 416. Partition Equal Subset Sum
  • 原文地址:https://www.cnblogs.com/nedulee/p/12063786.html
Copyright © 2011-2022 走看看