启动tomcat时cmd窗口一闪而过解决方法。

问题现象:

在实际开发中一般都是eclipse+tomcat(也许还会用到tomcat的插件),我们只需要在eclipse中单击servers上的按钮就可以成功启动tomcat了,

但是如果想在tomcat的安装目录下 双击startup.bat启动时却一闪而过了。这是为什么呢(tomcat启动失败),马上就带大家看看具体的原因。

下面我先跟大家确认一下问题出现的前提条件(本机版本Java:1.6.20,tomcat:6.0.32):

1)在eclipse里面启动tomcat时都是正常的。

2)在系统中配置了各种环境变量如下:

JAVA_HOME:H:\DevelopTools\Java\jdk1.6.0_20

CATALINA_BASE:H:\DevelopTools\apache-tomcat-6.0.32

CATALINA_HOME:H:\DevelopTools\apache-tomcat-6.0.32

CLASSPATH:.;%JAVA_HOME%;%JAVA_HOME%\jre\lib;

PATH:.;%JAVA_HOME%\bin;%CATALINA_HOME%\bin;

来分析一下:

进入tomcat的安装目录(即解压后放置的地方):

看到圈出红色的3个bat文件,一般通过startup.bat启动tomcat时流程是:startup->catalina->setclasspath->catalina

如果这3个bat文件里面有一个出现错误的话就是启动失败。为了找到一闪而过的原因得需要我们来看看这3个文件里面到底是什么了

先记事本打开startup.bat,找到最后一句话::end,我们知道end表示结束的意思,:end是一个标记,我们在后面加上一句pause

(暂停等待的意思)再次执行startup.bat,就会看到上图,当我们按任意的键时cmd窗口又是一闪而过了。但是这已经确定了我们的环境变量都是正确的。

为了更加详细的看到信息,我们再来更改一句:找到call "%EXECUTABLE%" start %CMD_LINE_ARGS% 把里面的start替换为run。

再来看看cmd窗口里面输出错误信息了:

error occurred during initialization of vm

could not reserve enough space for objectheap

could not create the Javavirtual machine

我们大体可以理解为:因为程序请求不到足够的内存就启动不了vm,导致程序退出。

那么我们可以来解决这个问题了:申请足够的内存就可以了

如下操作:在catalina.bat中 找到Execute The Requested Command下面的

set JAVA_OPTS把这一句替换为:

set JAVA_OPTS=%JAVA_OPTS% -server -Xms800m-Xmx800m -XX:MaxNewSize=256m

再次启动startup.bat会看到

已经启动成功了(记得把之前修改的内容run、pause还原回去)。

GOOD LUCK!!!!

最新文章

  1. 【Python】-【类解析】--【脚本实例】
  2. block(闭包)
  3. 《TCP/IP详解卷1:协议》第5章 RARP:逆地址解析协议-读书笔记
  4. 07 SQL优化技术
  5. Spring源码下载
  6. 制作类似DataGrid自定义控件
  7. springmvc文件上传2中方法
  8. HOG学习(一)
  9. UISegmentControl 、UIStepper
  10. Android中调用C++函数的一个简单Demo
  11. C_文件读写流
  12. Struts2--ModelDriven接收参数
  13. (原创)Java多线程作业题报java.lang.IllegalMonitorStateException解决
  14. Web前端与移动开发学习路线图
  15. Java 中的几种线程池,你之前用对了吗
  16. 20175214 《Java程序设计》第9周学习总结
  17. luogu P5291 [十二省联考2019]希望
  18. centos7黑客帝国装逼
  19. flask——包含,继承,宏
  20. Oracle 12C -- plug unplugged PDB into CDB

热门文章

  1. BZOJ2687 交与并/BZOJ2369 区间【决策单调性优化DP】【分治】
  2. Atocder ARC082 F-Sandglass 【思维题】*
  3. BZOJ1833 ZJOI2010 count 数字计数 【数位DP】
  4. JavaScript中字符串截取函数slice()、substring()、substr()
  5. [MEF]第04篇 MEF的多部件导入(ImportMany)和目录服务
  6. springboot各种集成
  7. PHP采集淘宝商品
  8. ( 转)mappingResource属性和mappingDirectoryLocations属性的使用
  9. 阿里云SLB快速切换至https
  10. Hibernate学习11——配置Hibernate二级缓存