首页 > 服务器 > Web服务器 > 正文

tomcat启动startup.bat一闪而过问题的解决方法【亲测有效】

2024-09-01 13:54:58
字体:
来源:转载
供稿:网友

遇到很多次运行startup.bat后,一个窗口一闪而过的问题,但是从来没去纠正怎样修改配置才是正确的,现在从网上查阅的资料整理如下:

tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tomcat的主目录,JAVA_HOME即java安装的主目录,jdk的主目录。

首先,要在环境变量处,配置JAVA_HOME,注意变量值是jdk的主目录,不是bin目录,并且不要加分号,如图:

tomcat,startup.bat

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

tomcat,startup.bat

如果有错误信息,这时候会显示出来,可以再根据它的错误提示,上网搜索对应的解决办法,下面是在错误提示窗口遇到过的问题:

一、 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 optionsremrem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $rem ---------------------------------------------------------------------------set JAVA_HOME=C:/Program Files/Java/jdk1.6.0_20set JRE_HOME=C:/Program Files/Java/jre6rem Make sure prerequisite environment variables are setif not "%JAVA_HOME%" == "" goto gotJdkHomeif not "%JRE_HOME%" == "" goto gotJreHomeecho Neither the JAVA_HOME nor the JRE_HOME environment variable is definedecho At least one of these environment variable is needed to run this programgoto exit

这样在每次运行startup.bat时就自动注册了JAVA_HOME,JRE_HOME。

运行startup.bat,提示“信息:Server startup in xxxxx ms”  OK 大功告成。

注意了!!!!

server.xml配置文件,Connector节点正确构成如下,如果这里修改过,定得仔细检查,否则启动startup.bat也会一闪而过

<Connector executor="tomcatThreadPool"        port="8081" protocol="HTTP/1.1"        connectionTimeout="20000"        redirectPort="8444" />

tomcat,startup.bat


注:相关教程知识阅读请移步到服务器教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表