设为首页 收藏本站
查看: 273|回复: 0

[经验分享] 关于tomcat startup.bat启动一闪而退

[复制链接]

尚未签到

发表于 2017-2-2 12:15:17 | 显示全部楼层 |阅读模式
  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。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-336515-1-1.html 上篇帖子: Jetty 的工作原理以及与 Tomcat 的比较 下篇帖子: Tomcat 设置自己的网站为默认首页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表