1.如果双击startup.bat,窗口一闪而过,可以在命令行里面启动startup.bat; 
2.如果命令行里面启动startup.bat情况还是这样,就可以在bat命令后面加上pause。这样就不会一闪而过了; 
3.为何startup无法启动?? 
    首先错误如下: 
    The JAVA_HOME environment variable is not defined correctly 
    This environment variable is needed to run this program 
    NB: JAVA_HOME should point to a JDK not a JRE

图形界面检查JAVA_HOME=C:\Program Files\Java\jdk1.6.0_03;  没看出什么问题 
终端检查  echo %JAVA_HOME% 显示为C:\Program Files\Java\jdk1.6.0_03 没什么问题(其实结果是不一样的哦) 
再加上jdk、netbeans、eclipse都运行正常(这些都使用同一个jdk,因此我认为JAVA_HOME肯定没有问题) 
    后来发现在tomcat目录下有一个setclasspath.bat,在终端里执行,查看JAVA_HOME 相关内容发现,原来在JAVA_HOME=C:\Program Files\Java\jdk1.6.0_03;  而恰恰是这个";"导致tomcat将java.exe的之路径组合成 
C:\Program Files\Java\jdk1.6.0_03;\bin\java.exe

4. 其他一些关于tomcat启动时的奇怪问题: 
   a.Tomcat无法从"开始"中启动,但可以在startup.bat中启动 
     JDK版本过低 
   b.启动的时候,加载信息的提示界面在屏幕上停留几秒钟就消失了,同时,tomcat的应用程序也自动关闭 
     在server.xml的最后,/host之上,应该写上的是:content 
   c.TOMCAT启动时有一些显示,但仍会自动关闭,无法启动. 
   可能是地址被占用,运行桌面上的"关闭TOMCAT"快捷方式,执行完毕后再启动TOMCAT.   d.TOMCAT启动时一闪而过,无法启动. 
     可能是端口被占用,可找到TOMCAT的安装目录下的SERVER.XML文件,如..\EAM2003\conf\SERVER.XML,用记事本打开此文件,查找8080,如果找到,就将8080改为8088. 
   e.TOMCAT能正常启动,可见到登录界面,但登录不进系统 
可能是IE的设置问题,将所有设置回复成默认设置,关闭"上网助手"或其他IE插件的"拦截弹出窗口"的功能.

5.解读startup.bat文件 
@echo off                                           //DOS在运行批处理时,会依次执行批处理中的每条命令,并且会在显示器上显示,如果你不想让它们显示,可以加一个“echo off”。当然,“echo off”也是命令,它本身也会显示,如果连这条也不显示,就在前面加个“@”。 
if "%OS%" == "Windows_NT" setlocal    //判断当前系统是否是window系统 
rem ---------------------------------------------------------------------------  //rem 是注释(下同) 
rem Start script for the CATALINA Server 
rem 
rem $Id: startup.bat 302918 2004-05-27 18:25:11Z yoavs $ 
rem ---------------------------------------------------------------------------

rem Guess CATALINA_HOME if not defined 
set CURRENT_DIR=%cd%          //设置当前目录 
if not "%CATALINA_HOME%" == "" goto gotHome //如果设置了CATALINA_HOME环境变量 ,就直接到下面的gotHome处 
set CATALINA_HOME=%CURRENT_DIR% //如果没有设置CATALINA_HOME,就设置CATALINA_HOME为当前目录(其实这里她假设你进入tomcat的安装目录) 
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome//判断一下catalina.bat是否找到了,找到了就直接到下面的gotHome处 
cd .. //这里他是假设你开始已经进入到了tomcat的bin目录,所以就退到上一级目录 
set CATALINA_HOME=%cd%//现在再设置CATALINA_HOME为tomcat的安装目录 
cd %CURRENT_DIR% //这里是进入dos的当前目录 
:gotHome 
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome  //再次判断catalina.bat是否找到了,找到了就直接到下面的okHome处,没有的话,就只能提示你啦! 
echo The CATALINA_HOME environment variable is not defined correctly 
echo This environment variable is needed to run this program 
goto end 
:okHome

set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat  //设置要执行的文件

rem Check that target executable exists 
if exist "%EXECUTABLE%" goto okExec //再次判断catalina.bat是否找到了,找到了就直接到下面的okExec处,没有的话,就提示。 
echo Cannot find %EXECUTABLE% 
echo This file is needed to run this program 
goto end 
:okExec

rem Get remaining unshifted command line arguments and save them in the 
set CMD_LINE_ARGS= //这里是设置参数 
:setArgs 
if ""%1""=="""" goto doneSetArgs //判断参数是否加入完成 
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 //将参数组成一行,接在后面 
shift 
goto setArgs 
:doneSetArgs 
call "%EXECUTABLE%" start %CMD_LINE_ARGS% //执行catalina.bat,最好将这行改为:echo "%EXECUTABLE%" start %CMD_LINE_ARGS%       以便阅读、理解本文件的作用

-------------------------------------------------------------------------------------------------------------------------------------------------------------

一直以来我的tomcat都可以在eclipse中启动,但是直接启动就不行,在cmd中显示找不到catalina_home,但是我明明设置了,今天正好有

空,找找原因,看到上面转帖中的startup.bat中的代码解释,终于发现 原来我在设置catalina_home的时候在最后加了“;”符号,导致路径

不对,把符号去掉,从新启动tomcat,OK。

关于tomcat startup.bat启动后一闪而过的问题(转)的更多相关文章

  1. 更改Tomcat startup.bat启动窗口名称

    通常在Tomcat bin目录下用startup.bat启动Tomcat ,启动窗口显示的Title是Tomcat 如果遇到一个服务器上多个Tomcat的话就会容易混淆.更改方法如下: 1 在bin目 ...

  2. Tomcat的startup.bat启动后显示乱码

    打开tomcat文件夹到conf目录下 修改logging.properties 找到 java.util.logging.ConsoleHandler.encoding = utf-8这行 更改为 ...

  3. Tomcat startup.bat启动隐藏弹出的信息窗口

    to make tomcat to use javaw.exe instead of java.exe using some startup parameter or environment vari ...

  4. tomcat startup.bat 启动中文显示乱码

    打开tomcat文件夹到conf目录下 修改logging.properties 找到 java.util.logging.ConsoleHandler.encoding = utf-8这行 更改为 ...

  5. Tomcat 用 startup.bat 启动时,加载信息之后又关闭服务器(差不多一闪而过)问题

    Tomcat 用 startup.bat 启动时,加载信息之后又关闭服务器(差不多一闪而过)问题 以前是正常的,后来在 server.xml 文件的 <Host> </Host> ...

  6. 解决tomcat启动 startup.bat的时候一闪而过(就是java环境变量的配置)

    系统变量配置:(解决tomcat启动 startup.bat的时候一闪而过) JAVA_HOME C:\Program Files (x86)\Java\jdk1.7.0_25 =========== ...

  7. tomcat双击startup.bat启动时闪退

    tomcat之前用的好好地没有问题,今天重启一下就发现双击startup.bat一闪而过,接着就没有任何动静了,tomcat无法启动啦? 于是网上搜了一堆tomcat闪退的解决办法,其中有说是没有读取 ...

  8. Tomcat:使用startup.bat启动tomcat遇到报错

    问题:使用startup.bat启动tomcat的时候报错,按照网页上的办法都试了一遍,但是没有解决问题.命令窗口启动tomcat会一闪而过,然后退出. 解决:1 检查环境变量配置是否有问题: CAT ...

  9. Tomcat中startup.bat启动无效

    error: Linux下启动和关闭tomcat报错,如下图所示: 而在windows下用cmd启动startup.bat也会报如上的错误: Neither the JAVA_HOME nor the ...

随机推荐

  1. codility上的问题 (23)Chi 2012

    这个题也比较有意思.意思是给定一个数组A,长度为M,里面都是正整数,代表每块地形的高度.现在要测试一种加农炮,给定一个炮弹的高度H, 如果存在最小的I,满足0 < I <  M,满足A[I ...

  2. Ugly Number II 解答

    Question Write a program to find the n-th ugly number. Ugly numbers are positive numbers whose prime ...

  3. C# 合成图片

    教师节快到了,给那些年的老师拼个图 前端有脸.眉.眼.特征.气泡等多元素图片 后端将最后选中元素的ID,合成“脸谱” /// <summary> /// 合并图片 /// </sum ...

  4. Collections.sort()

    Comparator是个接口,可重写compare()及equals()这两个方法,用于比价功能:如果是null的话,就是使用元素的默认顺序,如a,b,c,d,e,f,g,就是a,b,c,d,e,f, ...

  5. Javascript&Jquery获取浏览器和屏幕各种高度宽度方法总结及运用

    <js篇> Javascript获取浏览器和屏幕各种高度宽度方法总结 document.body.clientWidth       //网页可见区域宽(body) document.bo ...

  6. char图表

    首先看一下chart图表相应的各个属性: 要想使用chart图表,首先须要安装MSChart.exe:安装完后,工具箱里仍然没有,此时要在web.Config文件中加入以下代码: <span s ...

  7. 数学之路(3)-机器学习(3)-机器学习算法-PCA

    PCA 主成分分析(Principal components analysis,PCA),维基百科给出一个较容易理解的定义:“PCA是一个正交化线性变换,把数据变换到一个新的坐标系统中,使得这一数据的 ...

  8. [Angular 2] WebStorm - Managing Imports

    Some tips for import libaray by using webstorm: // Alt + Enter --> Auto Import // Ctrl + Alt + o ...

  9. Hadoop集群运行JNI程序

    要在Hadoop集群运行上运行JNI程序,首先要在单机上调试程序直到可以正确运行JNI程序,之后移植到Hadoop集群就是水到渠成的事情. Hadoop运行程序的方式是通过jar包,所以我们需要将所有 ...

  10. Dev GridControl,GridView 显示多行文本及合并相同单元格

    显示多行文本的方法 首先把gridcontrol的views的Optionsview里的RowAutoHeight设置为True 在In-place Editor Repository 里添加 Mem ...