启动tomcat时 一闪而过解决方法

【前文】

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

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

工具/原料

  • Tomcat

  • 记事本

方法/步骤

  1. 下面我先跟大家确认一下问题出现的前提条件(本机版本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;

     


     

  2. 我们来具体来分析一下问题出现的原因及解决办法:

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

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

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

     


     

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

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

     

     

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

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

    error occurred during initialization of vm

    could not reserve enough space for object heap

    could not create the java virtual machine

    我们大体可以理解为:因为程序初始化时请求不到足够的内存,导致vm程序退出。

     


     

     

  5. 那么既然找到了问题的原因,我们可以来解决这个问题了:申请足够的内存就可以了 

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

    set JAVA_OPTS把这一句替换为:

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

    关于set JAVA_OPTS这句话其实有很多种替换的方式,但是大体上都是一样的

    再次启动startup.bat 会看到 我们期待已久的画面啦。

    启动成功啦!

     

     

     

    【后文】
  1. 通过前面的3篇对Tomcat中startup.bat、catalina.bat、setclasspath.bat文件的解读,

    大家应该对它们有了大体的了解啦,遇到具体的问题我们就可以对症下药了。

  2. 我总结一下tomcat经常遇到的几个问题:

    1)The JAVA_HOME environment variable is not defined This environment variable is needed to run this program

    分析原因:没有在tomcat的配置文件中设置环境变量JAVA_HOME

    解决方法:

      JAVA_HOME=H:\DevelopTools\Java\jdk1.6.0_20(具体值要以实际的jdk安装路径为准)

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

    或者明确的定义JAVA_HOME环境变量

     在setclasspath.bat中开始位置加入以下俩句话:

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

     set JRE_HOME=H:\DevelopTools\Java\jdk1.6.0_20(具体值要以实际的jdk安装路径为准)

  3. 2) 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的设置中应该指定jdk的路径,不是jre的路径

    解决方法:

      JAVA_HOME=H:\DevelopTools\Java\jdk1.6.0_20(这里是JDK的安装后路径)

  4. 3)error occurred during initialization of vm could not reserve enough space for object heap could not create the java virtual machine

    分析原因:因为程序初始化时请求不到足够的内存,导致vm程序退出

    解决方法:

    设置tomcat的应用内存,在catalina.bat中 找到Execute The Requested Command下面的set JAVA_OPTS把这一句替换为 set JAVA_OPTS=  -Xms800m -Xmx800m

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

    说明: - Xms为tomcat启动初始内存 - Xmx为tomcat最大占用内存,以上两个参数关系到tomcat承受的访问性能,但也要根据服务器实际内存情况设定。

    其他问题不再罗列了,以后遇到后可以自己动手解决了。

     

    原出处:https://jingyan.baidu.com/article/546ae18563bacd1149f28cca.html来自百度经验

转载于:https://www.cnblogs.com/zzmb/p/8258364.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/369941.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Google Guava多集

继续这次番石榴之旅,我们到达了Multiset 。 我可能不像Multimaps或Bimaps那样使用它,但是它确实有它的用途。 那么什么是多重集? 也许您可以猜到它是一个可以容纳同一对象的多个实例的集合。 这不仅仅是列表吗? 在Java中&#x…

用javascript实现简单的用户登录验证

用javascript实现简单的用户登录验证 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Document</title> </head> <body><script type"text/javascript">function c…

怎么把计算机改程序,怎样修改程序软件

大家好&#xff0c;我是时间财富网智能客服时间君&#xff0c;上述问题将由我为大家进行解答。修改程序软件的方法是&#xff1a;这个必须要会编程才行&#xff1b;不会编程的话那是不可能的&#xff1b;对它进行反编译&#xff1b;脱壳&#xff1b;反编译好再把它重新加壳。程…

HTML的display属性将行内元素、块状元素、行内块状元素互相转换以及三者的区别

1.行内元素 查看演示 (1)设置宽高无效 (2)对margin仅设置左右方向有效&#xff0c;上下无效&#xff1b;padding设置上下左右都有效&#xff0c;即会撑大空间 (3)不会自动进行换行 <html> <head> <meta charset"utf-8" /> <title>行内元…

linux里面三剑客的重要作用

在服务器日志fresh.log中&#xff0c;找到所有报错的日期 $ sed -n /Error/p | awk {print $1} fresh.log grep:查找sed:行编辑器awk:文本处理工具 正则表达式的应用场景查找所有包含xxx的行取出以abc开头的所有单词匹配两位数、密码、QQ号、身份证号等 查找、取出、匹配符合条…

i2c通信 msp430g2553_关于msp430G2553的I2C串行通信

这是msp430g2xx3_uscib0_i2c_09例程&#xff0c;i2c从机接收数据的程序&#xff0c;请高手指点一下&#xff0c;为什么读取UCB0RXBUF是在发送中断中&#xff1f;接收机是在什么时候进入发送中断的&#xff1f;#include unsigned char *PRxData; // Pointer to RX dataunsigned …

Google Guava BiMaps

接下来的番石榴之旅&#xff0c;是另一种有用的收藏类型BiMap 。 实际上&#xff0c;这非常简单&#xff0c;BiMap只是双向地图。 反转地图 普通的Java映射是一组键和值&#xff0c;您可以按键查找值&#xff0c;这非常有用&#xff0c;例如&#xff0c;说我想创建一个&#x…

老大写得一个非常高大上的Makefile,包括非常多语法:

一个非常高大上的Makefile&#xff0c;包括非常多语法&#xff1a; TARGET api-login INSTALL_PATH /huishoubao/cgiinclude ../../implements/log/Makefile.log include ../../implements/tools/Makefile.tools include ../../implements/db/Makefile.db include ../../impl…

计算机等级考试模拟题卷子,二级VB模拟试卷 1

一、选择题&#xff1a;35题&#xff0c;2分/题&#xff0c;共70分下列各题A)、B)、C)、D)四个选项中&#xff0c;只有一个选项是正确的&#xff0c;请将正确选项涂写在答题卡相应位置上&#xff0c;答在试卷上不得分。1.假定窗体有一个标签&#xff0c;名为Label1,为了使该标签…

bugly怎么读_腾讯Bugly巨坑:使用不当造成UI界面卡死

本文由CocoaChina网友gagaga投稿前言Bugly和dispatch_once使用不当&#xff0c;会造成UI界面卡死。笔者在前段时间碰见了这样的一个卡死的情况&#xff0c;特意记录下来。iOS开发者或多或少都听过或用过Bugly。它是腾讯开发的一个SDK&#xff0c;用来捕捉App中的crash。对于dis…

复习HTML CSS(5)

n <meta>标记 <meta>的主要作用&#xff0c;是提供网页的源信息。比如&#xff1a;指定网页的搜索关键字 <meta>标记有两个属性&#xff1a;http-equiv和name。 1、 http-equiv属性 功能&#xff1a;模拟http协议文件头信息&#xff0c;当信息从服务器端传…

『cs231n』卷积神经网络工程实践技巧_下

概述 计算加速 方法一&#xff1a; 由于计算机计算矩阵乘法速度非常快&#xff0c;所以这是一个虽然提高内存消耗但是计算速度显著上升的方法&#xff0c;把feature map中的感受野&#xff08;包含重叠的部分&#xff0c;所以会加大内存消耗&#xff09;和卷积核全部拉伸成为向…

Spring属性占位符配置器–一些不太明显的选项

Spring的PropertySourcesPlaceholderConfigurer用于从XML或Java Config中定义的Spring bean定义外部化属性。 PlaceholderConfigurer支持的一些选项在文档中并不明显&#xff0c;但是很有趣并且可能有用。 首先&#xff0c;以Spring文档中的示例为例&#xff0c;考虑一个属性文…

计算机扬天m400c联想,【联想扬天M参数】联想扬天M系列台式电脑参数-ZOL中关村在线...

CPU型号内存容量硬盘容量屏幕尺寸显卡类型 价格详细对比Intel 奔腾双核 E52002GB DDRII 667MHz250GB SATAII 7200转高速防震硬盘集成显卡对比Intel 奔腾4 631512MBGB 512MB DDRII53380GB 7200转集成显卡对比Intel Atom 2301GBGB DDRII160GB 7200转高速防震硬盘集成显卡对比Inte…

SqlServer知识点

在公司天天写Sql写,存储过程,但是公司工具模板把创建的语句都写好了,只负责写里面的逻辑,久而久之,创建语句都不会写了。还有一些知识点都很模糊,平常使用的时候都不清楚,稀里糊涂的就在用。在这里整理一下。巩固复习。 一.存储过程。 1.存储过程类似编程语言的里面的函数,方法…

css3 flex 布局

今天做一个小实战&#xff0c;需要让一个登录框始终保持水平和垂直居中&#xff0c;第一个想到的就是通过定位&#xff08;要想让一个div居中&#xff0c;采用定位可以解决&#xff0c;示例&#xff09;&#xff0c; 然后开始接触flex布局&#xff0c;学完感觉真的好用&#x…

ios wkweb设置图片_iOS WKWebView的使用

WKWebView的使用前言最近项目中的UIWebView被替换为了WKWebView&#xff0c;因此来总结一下。示例Demo&#xff1a;WKWebView的使用本文将从以下几方面介绍WKWebView&#xff1a;1、WKWebView涉及的一些类2、WKWebView涉及的代理方法3、网页内容加载进度条和title的实现4、JS和…

元组的详细操作

一、创建元组 name(chinese,gansu,beijing)创建空元组name()元组中只包含一个元素时&#xff0c;需要在元素后面添加逗号消除歧义name(chinese,) 二、访问元组 元组可以使用下标索引来访问元组中的值name(chinese,gansu,beijing)假如要访问chinese则使用name[0] 三、修改元组 元…

Spring Data JDBC通用DAO实现–迄今为止最轻量的ORM

我很高兴宣布Spring Data JDBC存储库项目的第一个版本。 这个开放源代码库的目的是为基于Spring框架中 JdbcTemplate关系数据库提供通用&#xff0c;轻量且易于使用的DAO实现&#xff0c;与项目的Spring Data 框架兼容。 设计目标 轻巧&#xff0c;快速且开销低。 只有少数几个…

【Spark】SparkStreaming-加载外部配置文件

SparkStreaming-加载外部配置文件 spark加载配置文件_百度搜索Spark加载外部配置文件 - CSDN博客spark读取配置文件中的配置 - CSDN博客spark加载properties配置文件方法 - u013013024的博客 - CSDN博客Spark 官方文档&#xff08;4&#xff09;——Configuration配置 - bigbi…