`
ss1
  • 浏览: 79788 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Tomcat启动遇到的常见问题

阅读更多

如果一切顺利,我们就可以看到非常熟悉的 Tomcat 窗口 。但是,由于各种原因,我们可能会碰到一些问题, 下面 就具体分析一下 Tomcat 不能正常启动的原因

3.1 环境变量设置问题
如果机器上没有安装 JDK 或者环境变量 JAVA_HOME CATALINA_HOME 没有设置正确, Tomcat 就不能正常启动。

3.1.1 下面 这个错误对话框的意思是 Windows 不能发现 “-Djava.endorsed.dirs=” 命令,下面背景的黑窗口的错误是 JAVA_HOME 环境变量应该指向 JDK 而不是 JRE 的根目录(本 故意把把 JAVA_HOME 指向 JRE 的根目录,所以产生这个错误)。 在这种情况下,我们在可以重新设置环境变量 JAVA_HOME 并指向 JDK 的安装目录即可。




3.1.2 下面这个错误是因为 CATALINA_HOME 环境变量设置不正确,从而造成 Tomcat 不能正常启动。

C:\carl>startup
CATALINA_HOME C:\
The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program

3.1.3 下面这个错误是由于错误地设置了 Java 启动参数 xms256M ,正确的写法应该是 -Xms256M ,请注意大小写。大家知道,在 Java 命令行中, -Xms 表示 JVM 开始启动时所分配的内存大小,而 -Xmx 表示 JVM 运行时最大所能占用的的内存大小,如果您的应用程序所需的内存超过 Xmx 的值, JVM 就会抛出 Out of Memeory( 内存不足 ) 的异常而停止。当然, Xmx 的最大值不应超过物理内存的 70%

D:\back\blog>start_tomcat_debug.bat
D:\back\blog>set JAVA_OPTS=-xms256M
D:\back\blog>rem 请将 JAVA_HOME 环境变量修改到您的 JDK 安装目录
D:\back\blog>set JAVA_HOME=C:\Program Files\Java\jdk1.5.0_09
D:\back\blog>rem 请将 CATALINA_HOME 环境变量修改到您的 Tomcat 安装目录
D:\back\blog>set CATALINA_HOME=C:\carl\it\tomcat_research\jakarta-tomcat-5.0.28
D:\back\blog>rem 开始调用 catalina.bat 文件
D:\back\blog>call C:\carl\it\tomcat_research\jakarta-tomcat-5.0.28\bin\catalina. bat debug
Using CATALINA_BASE:   C:\carl\it\tomcat_research\jakarta-tomcat-5.0.28
Using CATALINA_HOME:   C:\carl\it\tomcat_research\jakarta-tomcat-5.0.28
Using CATALINA_TMPDIR: C:\carl\it\tomcat_research\jakarta-tomcat-5.0.28\temp
Using JAVA_HOME:   C:\Program Files\Java\jdk1.5.0_09
debug
无效的选项: -xms256M

用法:
jdb < 选项 > < > < 参数 > ...

如果遇到类似问题,可以用下面的方法重新设置一下
JVM 启动时的内存参数,在 startup.bat 脚本中加上下面这一行:

set JAVA_OPTS=-Xms256m -Xmx512m

上面这行表示
Tomcat 初始启动内存至少需要 256M ,而最大可能占用内存为为 512M 。有兴趣的读者可以在 startup.bat 里加上这行参数,启动 Tomcat ,您会从 Windows 任务管理器中看到您使用的内存迅速飙升。

3.2 Tomcat 应用服务器的配置问题及其中部署的某个 Web 应用问题

3.2.1   Tomcat 端口冲突,具体错误如下窗口所示。这表明缺省的 8080 端口已经被占有,所以 Tomcat 不能启动,我们可以通过修改 Tomcat 的配置文件 server.xml 来重新定义端口号即可启动,或者停止已经使用 8080 端口的程序。有时我们并没有启动 Tomcat ,也没有其它应用程序占用 8080 端口,但是 Tomcat 还抛出这个错误。这可能是因为上次我们关闭 Tomcat 时,并没有真正关闭 Tomcat 。在这种情况下,请从 Windows 任务管理器中检查一下有无一个 java.exe 的程序正在运行,如果发现,强行 kill java.exe ,然后重启试试。




3.2.2   Tomcat 配置文件有错误,产生异常。有时我们在修改 server.xml 文件时,不小心多加或者多删了一个 </>标签 ,可能造成 Tomcat 不能正常启动。下面的窗口说明了这个问题。




3.2.3   Tomcat 中部署的某个 Web 应用发生异常。这时 Tomcat 能正常启动,但在 Tomcat 启动窗口里发现一大堆异常,如 data source 没有正确定义,程序抛出异常等等都有关系。下面的这个例子是 Tomcat 自带的 balancer web 应用程序启动时产生错误。该问题是因为我们错误的修改了 balancer.xml 文件造成的。




3.2.4
  Web 应用程序的 jar 文件丢失,如 JDBC 数据库连接文件 class12.jar, mysql.jar 没有拷贝到 Webapp WEB-INF\lib 目录下就会产生异常。尤其要注意的是在 Tomcat5 以前的版本中,公共 jar 文件包通常放在 Tomcat 安装目录下的 common\lib 子目录中,但在 Tomcat6.0 中,这个公共目录改为 lib 子目录。

3.3 未知错误

3.3.1 有时 Tomcat 的启动窗口一闪而过,根本就看不出启动过程中发生了什么错误。 这中间的原因有好多种,最常见的解决办法就是使用 run 命令,打开 startup.bat 文件,找到下面这行:

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

并将它修改为:

call "%EXECUTABLE%" run %CMD_LINE_ARGS%

这样, Tomcat 启动时就不会弹出新窗口,我们就可以从容不迫地观察 Tomcat 的启动错误,并解决问题,请参考上面关于 run 命令的解释。

3.3.2 另外,阅读 Tomcat 的启动日志文件也是我们解决问题的重要办法,缺省的 Tomcat 日志是放在 Tomcat 安装目录的 logs 子目录下。例如下面这段日志说明 JspServletViewer 这个 Web 应用缺少 Map Object 的相关 jar 文件包,从而找不到 com/esri/mo2/map/core/Layout 这个 Java 类。

2008-02-23 11:19:30 StandardContext[/JspServletViewer]Exception sending context initialized event to listener instance of class com.esri.svr.cmn.FileRewriterContextListener
java.lang.NoClassDefFoundError: com/esri/mo2/map/core/Layout
at com.esri.svr.cat.ServiceXMLHandler.startElement ServiceXMLHandler.java:47)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)

分享到:
评论

相关推荐

    tomcat启动不了问题处理

    当遇到Tomcat启动失败的问题时,应首先根据日志文件中的错误信息进行定位。然后按照上述步骤逐一排查可能的原因。通过调整配置文件、解决端口冲突、更新JRE/JDK版本等手段,大多数启动失败的问题都可以得到解决。...

    tomcat常见问题及解决方法

    Tomcat 常见问题及解决方法 Tomcat 是一个流行的开源 Web 服务器和 Servlet 容器,广泛应用于 Web 开发和部署中。然而,在使用 Tomcat 的过程中,开发者经常会遇到一些常见的问题,本文将列举一些常见的问题和解决...

    Eclipse中Tomcat启动失败的解决方案

    然而,在实际操作过程中,不少用户会遇到Eclipse中Tomcat启动失败的问题,这不仅影响了开发效率,也可能导致项目延期。本文将深入探讨这一问题,并提供一系列可能的解决方案,帮助开发者们有效应对Eclipse中Tomcat...

    tomcat常见问题及其解决方法

    以下是对"Tomcat常见问题及其解决方法"的详细解析。 一、启动问题 1. **启动失败**:这可能是由于JDK版本不兼容或者环境变量配置错误导致的。确保安装了与Tomcat版本匹配的JDK,并正确设置了JAVA_HOME、CATALINA_...

    tomcat启动的错误

    这段描述涉及到了Tomcat启动过程中由于MySQL JDBC驱动加载问题导致的常见错误。下面我们将对该问题进行详细分析。 ### 1. MySQL JDBC驱动加载失败 #### 原因分析: - **路径配置错误**:根据错误提示,“Could not...

    tomcat启动问题

    本文将详细介绍Tomcat启动过程中可能遇到的问题及其解决方案,帮助读者快速定位并解决问题。 #### 二、理解Tomcat启动脚本 ##### 1. `startup.bat` 和 `catalina.bat` - **`startup.bat`**: 这是Windows系统下...

    linux环境下tomcat的启动、关闭及常见问题

    本篇文章将详细探讨如何在Linux系统中启动、关闭Tomcat以及处理常见问题。 一、Tomcat的安装与配置 在Linux上部署Tomcat之前,需要确保已安装Java Development Kit (JDK)。可以通过`java -version`命令检查Java是否...

    Tomcat 7 Windows中以Service方式启动配置启动参数

    在Windows环境中以Service方式启动Tomcat时,默认的JVM参数设置往往较低,这可能导致在运行大型应用程序时遇到内存不足的问题,例如常见的`java.lang.OutOfMemoryError: PermGen space`错误。为了避免这类问题的发生...

    Myeclipse中无法启动TOmcat的一些问题

    #### 二、常见问题及解决办法 ##### 1. 安装方式不当 - **问题描述**: - 如果使用的是直接解压的方式安装Tomcat,在Windows系统下可能会遇到启动问题。 - **解决方案**: - 推荐使用安装程序进行安装,这种方式...

    TOMCAT不能正常启动总结

    标题“TOMCAT不能正常启动总结”涉及到的是在部署和运行Apache Tomcat服务器时遇到的问题。Tomcat是一款广泛使用的开源Java应用服务器,主要用于运行Servlet和JSP应用。当Tomcat无法正常启动时,可能的原因多样,...

    Tomcat常见问题集锦(持续更新)

    【标题】:“Tomcat常见问题集锦(持续更新)” 在Java Web开发中,Tomcat作为最常用的开源应用服务器,其稳定性和性能是开发者关注的重点。这篇博客文章旨在收集和解决Tomcat在实际运行中遇到的各种问题,为开发者...

    tomcat 环境配置及问题处理

    ### Tomcat环境配置详解及问题处理 #### 一、Tomcat简介 ...通过以上步骤,我们可以顺利地完成Tomcat的安装和配置,以及解决常见的启动问题。如果遇到其他问题,建议查阅官方文档或社区论坛获取更多帮助。

    Centos7如何启动tomcat

    下面将详细介绍如何在Centos7系统中启动Tomcat服务,包括查找Tomcat安装路径、启动Tomcat服务、检查Tomcat状态以及处理常见问题。 #### 1. 查找Tomcat安装位置 首先需要确定Tomcat的安装位置。可以通过以下步骤来...

    windows下,把tomcat作成服务开机自启动不显示cmd窗口.zip

    在Windows操作系统中,将Tomcat配置为服务并设置为开机自启动,且不显示命令行窗口,是一项常见的系统管理任务。这有助于确保Tomcat在计算机启动时自动运行,并且不会打扰用户界面。以下是对这个过程的详细解释: ...

    启动tomcat version一闪而过解决方案

    在尝试通过`startup.bat`脚本启动Apache Tomcat服务器时,可能会遇到一个常见的问题:即启动过程非常短暂,甚至出现“一闪而过”的现象。这种情况下,用户往往无法从控制台输出的信息中获取到足够的错误提示,从而...

    tomcat启动debug.txt

    - **常见问题解决**:启动时可能会遇到各种问题,比如端口冲突、配置错误等。了解如何阅读和解析Tomcat的日志文件是诊断这些问题的关键。 综上所述,Tomcat的启动和调试是一项非常重要的技能,对于Java Web开发人员...

    tomcat使用常见问题可能会有你遇到的个人总结

    tomcat的个人使用经验说明,里面详细说明了tomcat常见的几个问题如启动报错,加载不了项目,配置热加载等

    Linux下Tomcat重新启动

    在 Linux 系统下,Tomcat 的重新启动是一个常见的问题,很多开发者和运维人员都会遇到这种情况。那么,如何在 Linux 系统下重新启动 Tomcat 呢?下面,我们将详细讲解 Tomcat 的重新启动过程。 首先,我们需要了解 ...

    解决tomcat无法启动.txt

    ### 解决Tomcat无法启动的方法 在日常的开发工作中,我们经常会遇到Tomcat服务器无法启动的问题,这不仅会影响到项目的正常运行,也会增加开发者的调试难度...希望本文能帮助大家顺利解决Tomcat启动过程中的各种问题。

    Eclipse无插件启动tomcat可调试

    这种方法适用于那些不希望使用插件或者遇到插件问题的开发者,同时也能让你更深入地了解Tomcat的启动过程。不过,值得注意的是,虽然这种方法可行,但在大型项目或频繁调试的场景下,使用专门的插件(如"Tomcat插件...

Global site tag (gtag.js) - Google Analytics