服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Tomcat - Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

2021-08-27 16:28guan_yan_guan Tomcat

这篇文章主要介绍了Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败解决方案,需要的朋友可以参考下

即上篇通过将web项目打成war包部署到tomcat服务器,解决mysql问题后,又出现了新问题,真是一波三折,所以将解决过程分享给大家,希望能帮助到小伙伴们~

将打好的war包拷贝到tomcat的webapps目录,然后在tomcat的bin目录找到startup.bat批处理文件,直接双击执行,结果运行几秒后直接闪退,顿时有种不好的预感,在浏览器访问web项目,结果连localhost:8080都无法访问,web项目未发布成功,一脸懵逼~

没有日志看不到为啥发布不成功额,想了想,可以稍微修改下startup.bat批处理文件,添加pause,这样运行结束只有按任意键才会关掉窗口(调试成功,在去掉pause)。

如果有错误信息,这时候会显示出来,可以再根据它的错误提示。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

此时,发现显示了一些环境变量,是不是环境变量没有配置引起的报错呢,就去检查了下,发现没有配置jre_home环境变量。配置后,发现还是闪退。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

也不清楚时环境变量引起的还是什么原因,没辙了,只能再找度娘了。

经过查资料,关于tomcat中startup.bat原理的相关内容,觉得很有帮助,摘取部分片段分享下,可能跟解决这个问题没关系,可略过~

startup.bat 解析

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

 验证catalina_home 环境变量是否设置,如果没有设置则通过catalina_home/bin目录下查找catalina.bat文件来确定catalina_home环境变量是否有效,如果没有找到catalina.bat 则goto end,结束。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

验证catalina.bat是否存在,如果不能存在则结束。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

判断启动 startup.bat 是否有参数,如果有参数,如果有有则赋值给 cmd_line_args变量。

通过call执行catalina.bat ,并传入参数。

其实startup.bat 的主要作用就是帮你找到catalina.bat并执行它。

好处:

如果你配置catalina_home的环境变量了,就可以把startup.bat 放到任何目录下,都可以启动tomcat了。

 好了,根据对startup.bat文件的解析,发现现在的问题跟环境变量没关系。瞬间有点失落。经验告诉我,可以查看日志撒。发现日志存在错误日志额。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

问题解决方法请参考:web项目打成war包部署到tomcat时报mysql access denied for user 'root'@'localhost' (using password: yes)错误解决方案

tomcat其他问题总结:

问题一: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。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

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

问题二:cannot find "d:\program files\apache-tomcat-7.0.52\bin\setclasspath.bat"

可能是catalina_home的值在某个地方被写死了,像我的绿色版tomcat在bin文件下多了一个setenv.bat的文件,打开一看果然是在这里面被写死了catalina_home的路径,这应该是为了某种原因被人后加上的设置文件,把这个文件删除之后,tomcat可以正常运行了。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

这种情况,可以去看catalina.bat中的配置,如下图,可能配置死的内容就在这个文件里。

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败的快速解决方案

总结

以上所述是小编给大家介绍的web项目打成war包部署tomcat时运行startup.bat直接闪退部署失败的快速解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://www.cnblogs.com/guanzhyan/archive/2018/01/17/8301965.html

延伸 · 阅读

精彩推荐
  • Tomcat解决Tomcat10 Catalina log乱码问题

    解决Tomcat10 Catalina log乱码问题

    这篇文章主要介绍了解决Tomcat10 Catalina log乱码问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的...

    条卯李系瓜皮10672021-09-17
  • Tomcatidea打包成war包部署到tomcat及访问路径问题(图文详解)

    idea打包成war包部署到tomcat及访问路径问题(图文详解)

    这篇文章主要介绍了idea打包war包部署到tomcat以及访问路径问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴...

    Ma_Bu_Teng7952021-09-12
  • TomcatCentOS系统下安装Tomcat7的过程详解

    CentOS系统下安装Tomcat7的过程详解

    今天开始学习Tomcat7 ,学习前首先需要安装,我用的系统是CentOS系统,所以下面这篇文章主要介绍了CentOS系统下安装Tomcat7的过程,需要的朋友可以参考下,下...

    上品物语5902021-08-16
  • TomcatMac+IDEA+Tomcat配置的方法步骤

    Mac+IDEA+Tomcat配置的方法步骤

    本主要介绍了Mac+IDEA+Tomcat配置的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    海M滨8062021-11-14
  • TomcatTomcat核心组件及应用架构详解

    Tomcat核心组件及应用架构详解

    众所周知Tomcat 就是一个 Servlet 容器,为了方便使用,他们具有http服务器的功能,所以Tomcat 就是一个“HTTP 服务器 + Servlet 容器”,我们也叫它们 Web 容器,...

    PoetryAndTheDistance12612021-09-24
  • Tomcat如何在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目

    如何在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目

    这篇文章主要介绍了在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目,需要的朋友可以参考下...

    「已注销」4242021-09-15
  • Tomcattomcat的配置使用详细版(小结)

    tomcat的配置使用详细版(小结)

    开发者开发部署web应用时通常使用tomcat服务器,这篇文章主要介绍了tomcat的配置使用详细版(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参...

    yumiaoxa5592021-08-31
  • TomcatTomcat日志文件定时清理备份的脚本

    Tomcat日志文件定时清理备份的脚本

    这篇文章主要介绍了Tomcat日志文件定时清理备份的脚本的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...

    jaamy8492021-08-15