tomcat启动一闪而过问题

来源:互联网 发布:流星网络电视 卡 编辑:程序博客网 时间:2024/05/01 20:08

首先通过一下几种方法可以在启动时不一闪而过,从而定位到问题。


1、可在startup.bat最后加上pause,这样就可以不一闪而过了。



2、查看日志输出的错误,可在cmd界面下输入:
catalina.bat run

3、在bin目录下的catalina.bat下:
:doStart
shift
if not "%OS%" == "Windows_NT" goto noTitle
if "%TITLE%" == "" set TITLE=Tomcat
set _EXECJAVA=start "%TITLE%" %_RUNJAVA%
goto gotTitle
:noTitle
set _EXECJAVA=start %_RUNJAVA%
:gotTitle
if not ""%1"" == ""-security"" goto execCmd
shift
echo Using Security Manager
set "SECURITY_POLICY_FILE=%CATALINA_BASE%\conf\catalina.policy"
goto execCmd

把 _EXECJAVA后面去掉 start 只留下  %_RUNJAVA%


4、在startup.bat下:把start改为run
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%
:end


可能遇到的问题:
1、
    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 

原因可能是环境变量没配置好,检查配置的环境变量;
或者在tomcat的bin目录下的setclasspath.bat加入
JAVA_HOME=<C:\Program Files\Java\jdk1.6.0_03>(jdk安装路径)
JRE_HOME=<C:\Program Files\Jre>(jre安装路径)

这样在每次运行startup.bat时就注册了JAVA_HOME,JRE_HOME。控制台窗口关闭后,这两个变量也将消失,不会再占用内存。


2、

error occurred during initialization of vm

could not reserve enough space for objectheap

could not create the java virtual machine

因为程序请求不到足够的内存就启动不了jvm,导致程序退出。
在catalina.bat下加入配置语句:
set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MaxPermSize=512m



0 0