Tomcat启动会遇到的问题部分解决方案
Tomcat的启动不一定会非常的顺利,这可以有多种原因
一、Tomcat是由Java所编写的,因此Tomcat的使用需要JDK的支持,如果没有配置环境变量,Tomcat当然无法启动,最明显的特征就是点击“startup.bat”会出现闪退,因此要在环境变量中设置“JAVA_HOME”的值为JDK的主目录,然后再在startup.bat和shutdown.bat中的首行加入
SET JAVA_HOME = F:\JDK_Kit
SET CATALINA_HOME = F:\TomCat_8.0.24
其中设置的属性值根据个人将JDK放置的位置所定,但一定是和环境变量中设置的一致。(这里还有一个CATALINA_HOME,稍后会说到)。对于初次安装Tomcat,当然还要在cmd中安装service.bat,这个请看《Tomcat免安装版的环境变量配置以及Eclipse下的Tomcat配置和测试》中的安装过程。这里说的Tomcat启动不起来可能是因为环境变量中误删了JAVA_HOME变量或者将JDK文件移动了位置,请注意检查。
二、由Tomcat的配置文件,Tomcat的端口默认为8080,如果其它软件占了8080端口,Tomcat启动会出错,最简单的实验方式就是开启一个Tomcat服务器后,再开一个Tomcat,这样后面的Tomcat的服务器就会启动出错。
因此有两种解决方式:
(1).在Tomcat配置文件中将8080端口改为其它端口
(2). 将在8080端口的软件关闭,以便Tomcat的启动。
一般在第二种解决方式都会先查询是哪一个软件占用了8080端口,然后进入任务管理器对其进行关闭,而有时我们会发现在任务管理器中结束某个进程后,这个程序会自动的又重新启动,造成杀不死的现象,如果发生这个情况,通常需要进Windows的“服务”中(方式:在cmd中键入“services.msc”)找到对应的程序,将其进行停止即可,对于某些程序如果启动方式是自动,通常都是开机启动并具有自动重启功能,非重要的程序经三思后可以考虑设置为手动启动方式。
三、上面曾经谈到设置的环境变量还有一个,那就是“CATALINA_HOME”,这个环境变量是告诉Tomcat的启动程序 Tomcat程序在哪里。
我的Tomcat放置在F盘目录下,环境变量中的设置也是其在F盘的目录,现在我拷贝一份Tomcat在D盘,在两份Tomcat的【webapps】目录下都有我自定义的【fjdingsdapp】目录,所不同的是在D盘下的该目录中有 “d.html” 文件,而在F盘下的该目录中有 “1.html” 文件,如下图所示:
在D盘下
在F盘下
注意:这时从D盘中的Tomcat启动,我们来访问d.html文件:

从D盘中启动的Tomcat服务器,在浏览器无法访问该Tomcat目录中的web应用程序,如果是访问1.html呢:

从D盘启动的Tomcat无法访问D盘下的Tomcat目录中的web应用,但是可以访问F盘下的web应用,说明从D盘点击的Tomcat启动程序 启动的却是CATALINA_HOME变量所指的Tomcat服务器,因此一定要将相应的web应用放置在CATALINA_HOME所定义的位置!!
PS:
Tomcat也可以不设置CATALINA_HOME环境变量,如果不设置,那么情况就跟上面不同,不设置CATALINA_HOME变量,那么从哪里打开Tomcat启动程序,就是运行哪里的Tomcat目录应用,以上面的例子为例,如果不设置CATALINA_HOME,那么从D盘打开的Tomcat服务器后,浏览器就可以访问D盘Tomcat目录下的d.html而不是F盘中Tomcat目录下的1.html了。
当然凡是软件,启动出错或者运行出错的原因会有千百种,今天可能运行正常,明天就出问题了,对这种问题我们可以去Tomcat的日志文件中查询,在Tomcat的目录下有这么一个【log】文件夹,里面存放都是Tomcat启动运行的日志:

这些日志以时间作为文件名,非常便于管理查看。
Tomcat启动会遇到的问题部分解决方案的更多相关文章
- Tomcat 启动花费很长时间的解决方案
原始解决方案链接 将 $JAVA_PATH/jre/lib/security/java.security 中的 securerandom.source=file:/dev/urandom 替换为 se ...
- CentOS环境下tomcat启动超级慢的解决方案
在本地开发环境,应用正常启动. 在CentOS测试环境,应用启动速度也是正常的. 但是在阿里云的生产环境,tomcat启动超级慢,并且在最终打印出来以下内容: org.apache.catalina. ...
- Spring Boot 添加jersey-mvc-freemarker依赖后内置tomcat启动不了解决方案
我在我的Spring Boot 项目的pom.xml中添加了jersey-mvc-freemarker依赖后,内置tomcat启动不了. 报错信息如下: org.springframework.con ...
- Tomcat启动报错:[The configuration may be corrupt or incomplete]的解决方案
1,场景说明: 偶然碰见Tomcat启动报错,此时并没有Add任何Web项目: Could not load the Tomcat server configuration at /Servers/T ...
- tomcat启动后,页面浏览时报错 Unable to compile class for JSP的解决方案【原创】
问题描述: tomcat启动后,console正常,console中语句为: 信息: Server startup in 7291 ms 但浏览器访问首页面http://localhost:808 ...
- CentOS7下Tomcat启动慢的原因及解决方案
现象 在一次CentOS 7系统中安装Tomcat,启动过程很慢,需要几分钟,经过查看日志,发现耗时在这里:是session引起的随机数问题导致的.Tocmat的Session ID是通过SHA1算法 ...
- tomcat启动后,页面浏览时报错 Unable to compile class for JSP的解决方案
转:tomcat启动后,页面浏览时报错 Unable to compile class for JSP的解决方案 检查tomcat与web工程对应版本,tomcat中对应版本的jar包拷贝到web工程 ...
- Tomcat启动时报org.springframework.web.context.ContextLoaderListener错误解决方案
问题现象:新从svn上检出maven的项目maven+spring+springmvc项目在Tomcat启动时,报如下错误. 严重: Error configuring application lis ...
- Tomcat启动时,控制台和IDEA控制台中文乱码解决方案
Tomcat启动时 控制台中文乱码 cmd控制台 IDEA控制台 解决方案 cmd乱码 打开Tomcat目录下的apache-tomcat-8.5.47\conf\logging.properties ...
随机推荐
- C#委托好处知多少
1.性能 性能是泛型的一个主要优点. 直接上例子,通过实例可以让我们很好的理解这一点. Stopwatch stopwatch = new Stopwatch(); stopwatch.Start() ...
- UE-9260使用说明1
UE-9260使用说明 序号 版本号 日期 备注 1 V0.1 2015-03-21 原始版本号.作者:xiaobin 2 3 4 5 主机环境 1.烧写操作 仿真器和FTP烧写 OS: Win XP ...
- RadioButtonList控件
在这里只写,绑定数据库数据的RadioButtonList控件: 一: 首先,先在数据库中建立一张表: 1 CREATE TABLE KK 2 ( 3 id INT, 4 [name] VARCHAR ...
- c++ 重载,覆盖,重定义
写的不是很明白,后来又重新整理过了,在: http://www.cnblogs.com/iois/p/4986790.html 函数重载(Function Overloading) C++允许同一范围 ...
- Storyboard中使用UIscrollView添加约束的开发总结
第一次在项目中用storyboard做界面,一般的界面直接添加约束非常爽快 然后有个界面有scrollview,添加了约束还总是出错 刚开始使用了 wCompact,hRegular,滑动出现问题,有 ...
- Ajax的三种实现及JSON解析
本文为学习笔记,属新手文章,欢迎指教!! 本文主要是比较三种实现Ajax的方式,为以后的学习开个头. 准备: 1. prototype.js 2. jquery1.3.2.min.js 3. j ...
- linux c setitimer使用方法说明
在linux c编程中.setitimer是一个比較经常使用的函数.可用来实现延时和定时的功能,网上有各种零零散散的使用方法说明,都仅仅提到了个别使用方法,今天抽出时间实践整理了一份比較具体的: 使用 ...
- android事件传递机制以及onInterceptTouchEvent()和onTouchEvent()详解二之小秘与领导的故事
总结的不是很好,自己也有点看不懂,正好现在用到了,研究了一个,再次总结,方便大家查看 总则: 1.onInterceptTouchEvent中有个Intercept,这是什么意思呢?她叫拦截,你大概知 ...
- Android TextView自己主动换行文字排版參差不齐的原因
今天项目没什么进展,公司后台出问题了.看了下刚刚学习Android时的笔记,发现TextView会自己主动换行,并且排版文字參差不齐.查了下资料,总结原因例如以下: 1.半角字符与全角字符混乱所致:这 ...
- WM_PAINT消息详解,使用InvalidateRect或InvalidateRgn函数刻意产生WM_PAINT消息(WIN7里有变化,“调整视觉效果”,将“启用桌面组合”去掉)
什么时候会触发WM_PAINT消息消息呢? 以下内容来自大名鼎鼎的<Windows程序设计(第五版)> 大多数Windows程序在WinMain中进入消息循环之前的初始化期间都要呼叫函数U ...