tomcat启动startup.bat一闪而过

资料一:

遇到很多次运行startup.bat后,一个窗口一闪而过的问题,但是从来没去纠正怎样修改配置才是正确的,现在从网上查阅的资料整理如下:
tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tomcat的主目录,JAVA_HOME即Java安装的主目录,jdk的主目录。
首先,要在环境变量处,配置JAVA_HOME,注意变量值是jdk的主目录,不是bin目录,并且不要加分号,如图:


然后,如果这样配置,startup.bat还是一闪而过,可以右键点击startup.bat,编辑,在文本的最后敲上pause,保存后重新运行startup.bat,这时候窗口不会再一闪而过,而是停留在桌面上(调试成功,把pause去掉即可)。

如果有错误信息,这时候会显示出来,可以再根据它的错误提示,上网搜索对应的解决办法,下面是在错误提示窗口遇到过的问题:
一、 Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
Tomcat的startup.bat,它调用了catalina.bat,而catalina.bat则调用了setclasspath.bat,只要在setclasspath.bat的开头声明环境变量(红色两行)就可以了,原因是后来较新版本安装完不会自动登记环境变量JAVA_HOME,JRE_HOME。
给setclasspath.bat的开头添加红色标记部分,如下:
rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $
rem ---------------------------------------------------------------------------

set JAVA_HOME=C:Program FilesJavajdk1.6.0_20
set JRE_HOME=C:Program FilesJavajre6

rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto gotJdkHome
if not "%JRE_HOME%" == "" goto gotJreHome
echo Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
echo At least one of these environment variable is needed to run this program
goto exit

这样在每次运行startup.bat时就自动注册了JAVA_HOME,JRE_HOME。
运行startup.bat,提示“信息:Server startup in xxxxx ms”  OK 大功告成。
二、Cannot find ""d:apache-tomcat-6.0.32"insetclasspath.bat"
这个时候,可能是CATALINA_HOME的值在某个地方被写死了,像我的绿色版tomcat在bin文件下多了一个setenv.bat的文件,打开一看果然是在这里面被写死了CATALINA_HOME的路径,这应该是为了某种原因被人后加上的设置文件,把这个文件删除之后,tomcat可以正常运行了。

这种情况,可以去看catalina.bat中的配置,如下图,可能配置死的内容就在这个文件里。


 
 资料二:

1:环境变量问题

你可以在环境里面配置Java环境,或者在Tomcat启动BAT里面设置。

windows下配置JDK环境变量

1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为 C:Program FilesJavajdk1.6.0_06

2.安装完成后,右击“我的电脑”,点击“属性”;

3.选择“高级”选项卡,点击“环境变量”;

4.在“系统变量”中,设置3项属性,JAVA_HOME, PATH, CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;

5.JAVA_HOME 指明JDK安装路径,就是刚才安装时所选择的路径 C:Program FilesJavajdk1.6.0_06,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);

PATH 使得系统可以在任何路径下识别java命令,设为:%JAVA_HOME%in;%JAVA_HOME%jrein

CLASSPATH 为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar (要加.表示当前路径)

%JAVA_HOME%就是引用前面指定的JAVA_HOME;

6.“开始”->;“运行”,键入“cmd”;

7.键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功;

启动文件中指定JDK环境变量

我是在catalina.bat中配置的,也可以在setclasspath.bat中配置

1
2
set JAVA_HOME=C:Program FilesJavajdk1.6.0_45
set JAVA_OPTS=-server -Xms256m -Xmx1300m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000

2:最大内存配置错误

1
-Xmx1300m

这里配置的是1300M的最大可用内存,但是如果是32位操作系统,设置的最大可用内存太大的话,会造成闪退情况。

资料三:

8. 启动Tomcat闪退无法启动原因解决

Posted on 2014-09-30 10:12 _请叫我darling 阅读(4325) 评论(0) 编辑 收藏

原因可能是由于下面问题导致的:

1.Tomcat环境在不同电脑上引用的jdk路径不同

比如:在A电脑上Tomcat引用的jdk路径为:C:Javajdk1.6.0_10

        而在B电脑上jdk的安装路径为:D:Javajdk1.6.0_10

这样把Tomcat环境从A电脑移动B电脑上,就会出现闪退问题;

解决方法如下:

找到Tomcat安装目录下的startup.bat启动文件,进去找到如下:

rem Guess CATALINA_HOME if not defined
set JAVA_HOME=C:Javajdk1.6.0_10

把 "set JAVA_HOME="后面的路径改为B电脑中jdk安装的路径即可。

启动Tomcat闪退无法启动原因解决

 今天新开一台机器,2003的32位,使用一个解压版的Tomcat,配置后启动Tomcat闪退,发现无法启动。通过网上查和自己总结,Tomcat闪退的大概有两种原因:

 
1:环境变量问题
你可以在环境里面配置Java环境,或者在Tomcat启动BAT里面设置。
windows下配置JDK环境变量
a.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为 C:Program FilesJavajdk1.6.0_06
b.安装完成后,右击“我的电脑”,点击“属性”;
c.选择“高级”选项卡,点击“环境变量”;
d.在“系统变量”中,设置3项属性,JAVA_HOME, PATH, CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;
e.JAVA_HOME 指明JDK安装路径,就是刚才安装时所选择的路径 C:Program FilesJavajdk1.6.0_06 ,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);
PATH 使得系统可以在任何路径下识别java命令,设为:%JAVA_HOME%in;%JAVA_HOME%jrein
CLASSPATH 为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar (要加.表示当前路径)
%JAVA_HOME%就是引用前面指定的JAVA_HOME;
f.“开始”->;“运行”,键入“cmd”;
g.键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功;
启动文件中指定JDK环境变量
我是在catalina.bat中配置的,也可以在setclasspath.bat中配置
set JAVA_HOME=C:Program FilesJavajdk1.6.0_45
set JAVA_OPTS=-server -Xms256m -Xmx1300m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
 
2:最大内存配置错误
-Xmx1300m
这里配置的是1300M的最大可用内存,但是如果是32位操作系统,设置的最大可用内存太大的话,会造成闪退情况。
原文地址:https://www.cnblogs.com/efforts-will-be-lucky/p/7368261.html