startup.bat启动Tomcat闪退问题原因及解决

目录
  • 出现问题:
  • 分析问题
  • 闪退原因:
    • 原因一:java环境变量出问题了
    • 原因二:端口占用
    • 原因三:你的Tomcat不干净了

出现问题:

安装了Tomcat之后,开始用着还好好的。莫名其妙的就很突然出现了一些玄学问题,某一次开始我双击了startup.bat启动Tomcat时我的黑窗口就很不给面子的运行着运行着就闪退了,隐约间能看到个异常,可刚看清楚一个caused by...黑窗口就已经关闭了。经历了重启电脑等常规解决问题的思路后依旧无法解决。

分析问题

既然问题出现在这个启动后闪退,那就去看一眼启动时都做了什么?用记事本打开startup.bat,会发现一行脚本是这样写的:

set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"

看得出它访问了本目录下的catalina.bat脚本,那就记事本打开catalina.bat,此时又发现里面出现了这些内容:

rem Get standard Java environment variables
if exist "%CATALINA_HOME%\bin\setclasspath.bat" goto okSetclasspath
echo Cannot find "%CATALINA_HOME%\bin\setclasspath.bat"
echo This file is needed to run this program
goto end
:okSetclasspath
call "%CATALINA_HOME%\bin\setclasspath.bat" %1
if errorlevel 1 goto end

这说明catalina.bat又访问了该目录下的setclasspath.bat,而记事本打开setclasspath.bat后又发现它又访问了catalina.bat

综上发现startup.bat启动流程为:startup->catalina->setclasspath->catalina

闪退原因:

可见这三个文件一个都不能出问题。分析这三个文件得出闪退问题主要原因

原因一:java环境变量出问题了

从启动脚本中看得出Tomcat多次访问了环境变量信息,其中也包括java环境(毕竟Tomcat原码也是java啊)。故要先去检查jdk的环境配置
注意:CATALINA_HOME是Tomcat的环境,你可以选择不配置,不过这样的话你就只能在bin目录下启动Tomcat了,换句话来讲,配置完Tomcat环境后你可以把startup.bat复制到其他地方双击启动。

原因二:端口占用

如果Tomcat已经被启动或者8080端口被占用,这自然是不允许的。

你可以直接访问localhost:8080看能否访问Tomcat,如果可以那就说明是已经开启过了的,你可以双击shutdown.bat进行关闭。

或者你可以在黑窗口中执行netstat -ano | findstr "8080"查看8080端口状态,如果是TIME_WAIT则说明未被占用。

原因三:你的Tomcat不干净了

到现在还没解决,那就有可能是你所下载的Tomcat是一些绿色版、无敌版、xx版等阉货或畸形货。此时就可在记事本打开startup.bat,在脚本最后面一行加上pause,保存后启动进行断点调试了。(不一定非得像我图片中加在倒数第二行,最后一行应该也可以,只要不放在前面的逻辑中就行)。

此时启动效果和之前没有区别,只是出了问题后不再会立刻闪退,而是你在窗口中按任意键后才会退出。OK!现在你就研究属于你的bug吧(记得解决完问题后把pause删掉)!

到此这篇关于startup.bat启动Tomcat闪退问题原因及解决的文章就介绍到这了,更多相关startup.bat启动Tomcat闪退内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 直接双击启动tomcat中的startup.bat闪退原因及解决方法

    免安装的tomcat双击startup.bat后,启动窗口一闪而过,而且tomcat服务未启动. 原因是:在启动tomcat是,需要读取环境变量和配置信息,缺少了这些信息,就不能登记环境变量,导致了tomcat的闪退. 解决办法: 1.在已解压的tomcat的bin文件夹下找到startup.bat,右击->编辑.在文件头加入下面两行: SET JAVA_HOME=D:\Java\jdk1.6.0_10 (java jdk目录) SET TOMCAT_HOME=E:\tomcat-6.0.35

  • startup.bat启动Tomcat闪退问题原因及解决

    目录 出现问题: 分析问题 闪退原因: 原因一:java环境变量出问题了 原因二:端口占用 原因三:你的Tomcat不干净了 出现问题: 安装了Tomcat之后,开始用着还好好的.莫名其妙的就很突然出现了一些玄学问题,某一次开始我双击了startup.bat启动Tomcat时我的黑窗口就很不给面子的运行着运行着就闪退了,隐约间能看到个异常,可刚看清楚一个caused by...黑窗口就已经关闭了.经历了重启电脑等常规解决问题的思路后依旧无法解决. 分析问题 既然问题出现在这个启动后闪退,那就去看

  • windows下直接点击startup.bat启动tomcat服务示例代码

    在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏Tomcat在启动过程中找不到. 报错信息如下:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program;提示找不到java_home各jre_home路径,何解? 原因不知道了,下面来看解决办法:

  • ubuntu上在androidstudio中启动emulator闪退的解决方法

    阅读目录(Content) 平台 现象 解决 一.查看模拟器的信息 二.命令行运行模拟器 平台 Ubuntu14.04 64 现象 在AndrodStudio中点击模拟器的启动按钮后,模拟器界面弹出后,又立刻闪退. 解决 一.查看模拟器的信息 从上面可以看到模拟器的存放路径以及名称: 路径:/home/pengdonglin/.android/avd/4_WVGA_Nexus_S_API_24.avd 名称:4_WVGA_Nexus_S_API_24 架构:x86_64 二.命令行运行模拟器 在

  • 关于解决iReport4.1.1无法正常启动或者闪退或者JDK8不兼容的问题

    公司里面再用iReport的时候,我也安装使用了. 但是面临一个问题 我的iReport始终不能打开,困绕了老半天  但是是软件问题不方便问大佬自己研究了老大一会儿 加载之后就闪退了!!! 最后还是老大还是跟我说了需要JDK1.7才可以,我的电脑安装了两个jdk 一个是1.7的一个是1.8的   平时用的1.8  所以我开发的时候一直都是1.8  突然换成1.7的很麻烦 所以经过这两天的研究 我更改了配置文件,使得它单独强制的去使用jdk1.7来启动 1.我们打开\iReport-4.1.1\e

  • 启动Tomcat时出现大量乱码的解决方法

    启动Tomcat乱码 1. 在 tomcat 的启动窗口打印的启动信息中包含了大量的中文乱码,虽然这些对 tomcat 本身的使用没有任何影响,但却非常碍眼,影响视觉效果! D:\jar\apache-tomcat-7.0.109\bin\catalina.bat run [2021-06-15 12:06:55,652] Artifact ch01hellospringmvc:war exploded: Waiting for server connection to start artifa

  • win10 下 idea2020安装 JetBrains-agent.jar 包后闪退的问题及解决办法

    相关资源: IntelliJ IDEA 2020.2 EAP 官方早期版 32/64位 支持Java 14!Java开发工具IntelliJ IDEA 2020.1稳定版发布 https://www.jb51.net/news/720220.html IntelliJ IDEA 2020.1正式发布,你要的Almost都在这(推荐) https://www.jb51.net/softjc/720170.html java 开发工具IntelliJ IDEA 2020.1 正式发布,15 项重大特

  • IDEA 2020.1打开时闪退的问题及解决方法(完美解决方法)

    推荐阅读: 支持Java 14!Java开发工具IntelliJ IDEA 2020.1稳定版发布 https://www.jb51.net/softjc/720187.html IntelliJ IDEA 2020.1正式发布,你要的Almost都在这(推荐) https://www.jb51.net/softjc/720170.html java 开发工具IntelliJ IDEA 2020.1 正式发布,15 项重大特性.官方支持中文了(推荐) https://www.jb51.net/n

  • 关于intellij idea打开就闪退或关闭详细解决办法

    intellij idea打开就闪退或关闭详细解决办法 1.以管理员身份运行 如果遇到这种情况,首先用"以管理员身份"打开试试,不然就再"以管理员身份"重装,现在的新系统都是NT核心,对磁盘的读写权限控制得很复杂,有时候莫名其妙打不开时,就用"管理员身份"试试.亲测有效! 2.如果是内存问题 找到 IDEA安装目录bin目录下的idea64.exe.vmoptions 文件,设置第二个参数, (1)这个如果设置过小导致项目运行不起来,就调大. (

  • linux中启动tomcat后浏览器无法访问的解决方法

    前言 不论是要启动,还是要关闭tomcat服务,都是要去到tomcat安装目录下的bin路径,当然你要是电脑关机自然是不需要的. 但最近在启动后发现了一个问题:Centos服务器,本地和服务器ip互ping正常(本机ping服务器,服务器ping本地),但是服务器上部署好tomcat后,本机却无法通过浏览器访问服务器tomcat的8080端口. 比如服务器公网ip为:123.123.123.123,启动tomcat后默认端口为8080,通过123.123.123.123:8080访问时,无法访问

  • intellij idea 启动tomcat 1099端口被占用的解决

    问题:当使用idea进行开发,关闭tomcat,然后重启tomcat,报如下错误: 错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099; nested exception is:  java.net.BindException: Address already in use: JVM_Bind 这里提示是1099端口被占用了...... 解决办法: 方法一: 1. cmd --->>>> 

随机推荐