比较坑的Tomcat闪退(win7)

比较坑的Tomcat闪退(win7)**我的tomcat7用了好久了,可以说是最开始学习javaweb的时候下载的,看着别人的视频里一顿配置,于是我也跟着一顿配置,虽然当时完全不知道在干什么,感觉好厉害的样子!然后直到有一天,你可能把电脑里一些没什么卵用的自己瞎做的项目删除了之后,然后你启动你的tomcat的startup.bat的时候,让人无语的时候来了,只见刷的一下cmd窗口就飞过,然后就没了,你还是一脸蒙逼,什么也不知道。。。…

大家好,又见面了,我是你们的朋友全栈君。

**我的tomcat7用了好久了,可以说是最开始学习javaweb的时候下载的,看着别人的视频里一顿配置,于是我也跟着一顿配置,虽然当时完全不知道在干什么,感觉好厉害的样子!然后直到有一天,你可能把电脑里一些没什么卵用的自己瞎做的项目删除了之后,然后你启动你的tomcat的startup.bat的时候,让人无语的时候来了,只见刷的一下cmd窗口就飞过,然后就没了,你还是一脸蒙逼,什么也不知道。。。。。

这个闪退很让人崩溃,有的时候很无语的就是单独启动Tomcat会闪退,而在Eclipse中用这个Tomcat却能正常工作,WFK!!!,关键你还不知道是什么错误,不知道从哪里入手,相信绝大多数人的想法!其实吧,大概可以从几个方面入手;

第一(很重要):一定一定要检查你的环境变量JAVA_HOME和JRE_HOME(最好配置一下CLASSPATH)有没有错误,我就是有一次JRE_HOME中有个地方打错了,然后我在PATH那里用的是;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin,这样居然一直用了好久没出错,用tomcat的话貌似会检测这些环境变量来找到jdk的那些jar包的。。

第二(不推荐):这是网上绝大多数人解决问题的做法,就是在startup.bat或者setclasspath.bat等这些启动文件中去指定JAVA_HOME、JRE_HOME或者TOMCAT_HOME这些路径,这样我是极其不推荐的!因为这样做有的时候很坑爹,因为一旦你以后要换jdk,你看看你需要改多少东西。。。。。环境变量那里去改就不说了,然后你还要在这里一个个启动文件中去改,有一个地方没改肯定会出问题,你还不知道到底是哪里出问题了,于是你又要重头到尾再看看哪里有遗漏的地方。。。简直日了狗了

第三(可以试试):这个方法就是打开startup.bat文件,在文件的最后一行添加PAUSE,这个命令可以给你一个简单的错误提示,一些小错误可以在黑窗口看到,比如哪个环境变量有错误什么的(记住错误解决之后要将这个PAUSE去掉啊。。)**
在这里插入图片描述

第四(推荐):如果你在第三步中黑窗口显示按任意键继续,恭喜你,你只适合第四步!这一步就是看日志了,每个tomcat都有一个存放日志文件的目录,那里记录着你每次开启tomcat的信息,根据时间打开找到你刚刚启动失败的日志文件,然后打开日志文件(从最下面开始看,最下面的是最新的),就可以慢慢百度查了。。。我就碰到过一个闪退的错误:
在这里插入图片描述
错误如下:

cument base D:\java\java_workapace\Testtomcat\WebContent does not exist or is not a readable directory
	at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:136)
	at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:5286)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5477)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1702)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1692)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

七月 07, 2019 9:29:54 上午 org.apache.catalina.core.ContainerBase startInternal
严重: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1241)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1702)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1692)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
	... 6 more
Caused by: org.apache.catalina.LifecycleException: Error in resourceStart()
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5478)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	... 6 more

七月 07, 2019 9:29:54 上午 org.apache.catalina.core.ContainerBase startInternal
严重: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1241)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:300)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:444)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:758)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:705)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:428)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1702)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1692)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1249)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	... 6 more

看第一行 cument base D:\java\java_workapace\Testtomcat\WebContent does not exist or is not a readable directory,说的是我这个目录下面有个目录不存在,于是我想了一下,妈耶!这目录我在刚用tomcat的时候瞎搞,在tomcat中的server.xml配置文件中配置了一个虚拟目录,后来清理的时候把这个目录删了。。。。。难怪总是报错,坑啊!!!把这个docBase的内容删了,好了,世界又是如此美好!
在这里插入图片描述
第五(可能性最低):千万别是因为你的jdk和Tomcat版本的问题那就无语了。。。。那你就只能重新装某一个了,这是真的没办法!

就这么多吧!我的这个tomcat一直没舍得删除,就是要看看到底是什么错误,啊哈哈哈!!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139176.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python执行cmd命令并解析结果_python如何打包成可执行程序

    python执行cmd命令并解析结果_python如何打包成可执行程序身为一个编程小白,最近刚刚接手工作。近期在使用pyinstaller的时候,发现了一个很严重的问题,那就是缺少包。当时并不知道,因为代码已经是上任大佬写好的,我可以直接用。先说一下问题吧(图片忘了保存)。执行文件突然死掉,当时手速够快截了一个图。原因是缺少了这么个包。pkg_resources.py2_warn具体的解决方法如下:顺便说一下,pyinstaller的安装方法,很简单。首先打开你的pycharm,然后点击左下角的Terminal之后输入命令 pipinstallpyins

    2022年8月28日
    0
  • 大数据营销在电商领域的应用案例

    大数据营销在电商领域的应用案例在电商产业如火如荼的今天,电商已成为互联网经济的主要力量,并不断发展升级。618年中大促、双十一、双十二等一系列的购物狂欢节引爆了一个又一个的互联网经济热点。随着互联网新技术的出现,尤其是互联网大数据在电商领域的应用将给电商企业带来诸多利益,跟不上时代的企业将会处于弱势并最终被淘汰。大数据正在给互联网带来翻天覆地的变化,尤其是在大数据营销运用方面。以大数据为基础的互…

    2022年5月27日
    43
  • C语言链表排序_C语言版数据结构链表

    C语言链表排序_C语言版数据结构链表以上搬运至郝斌老师数据结构中的视频知识,然后依样画葫芦去写的;当然指针知识和链表的基础知识要先懂:首先先创建链表,如下:typedef struct node{intdata;//创建数据域structnode*pNext;//创建指针域}NODE,*PNODE;//相当于structnode,struct*nodePNODE

    2022年8月31日
    0
  • Linux下Centos7对外开放端口

    Linux下Centos7对外开放端口概要最近在docker下搭建MySQL和Redis环境,远程linux主机内部网络都走通了,但是就是外网无法连接远程服务器的MySQL和Redis。经过一番查找和学习,终于找到了问题,不仅远程服务器上docker要做好内部和外部端口的映射,关键还要对对外开放的端口添加到防火墙中。内容介绍的逻辑是:本篇文章先记录Centos7下查看防火墙状态和网络状态命令;下一篇将介绍通过docker…

    2022年9月7日
    0
  • J2EE是什么意思_main()函数是java程序的执行入口

    J2EE是什么意思_main()函数是java程序的执行入口j2ee   J2EE简介  J2EEJava2平台企业版(Java2Platform,EnterpriseEdition)   J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。   J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依

    2022年10月11日
    0
  • Python之抽象基类建议收藏

    抽象基类的核心定义在abc模块中,模块中包括了创建抽象基类需要的修饰符和元类型abc.ABCMeta用来生成抽象基础类的元类。由它生成的类可以被直接继承。abc.ABC辅助类,让你可以不用关心元类

    2021年12月19日
    53

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号