tomcat常用技巧
1、 修改Tomcat的名称
适用场景:
在测试服务器资源有限或是在本机服务器部署多套应用系统时,由于要启动多个TOMCAT服务,且TOMCAT服务没有用名称去区分,会造成维护使用上存在一定晨读的不方便。
解决方法:
在tomcat-bin目录中找到catalina.bat。

用文本编辑器打开批处理文件,搜索title,大致是在236行,将if "%TITLE%" == "" set TITLE=Tomcat中的tomcat改成目前系统的简称或其他可识别的名称。

2、 同一台电脑上部署多个tomcat服务
不要在系统的环境变量中配置tomcat的环境变量,在tomcat\conf的目录下找到server.xml文件,用文本编辑器打开该文件,修改不同tomcat的端口信息,主要需要修改的内容如下,修改完毕后,重启tomcat即可。
" shutdown="SHUTDOWN"> //修改此处server的端口信息,确保多个tomcat的端口不一样。

" protocol="HTTP/1.1" //修改此处HTTP的端口信息,确保多个tomcat的端口不一样。
connectionTimeout="20000"
URIEncoding="GBK"
redirectPort="8443" />

" /> //修改此处AJP的端口信息

3、 设置Tomcat的内存大小,减少内存溢出
适用场景:
TOMCAT启动时报错:Error occurred during initialization of VM。Could not reserve enough space for object heap。
解决方法:
在tomcat的bin目录下,catalina.sh文件的tomcat内存参数配置过大,超过机器可用内存总数造成,修改到适当的值即可,修改的参数为:JAVA_OPTS="-Xms50m -Xmx60m"。
4、 Tomcat指定JDK的版本
适用场景:
不同的业务系统对于JDK的版本要求不同,如果不指定tomcat的JDK版本,那么有些业务系统启动是就会报JDK版本的问题,系统启动无法完成。
解决方法:
1、修改Tomcat的bin文件夹下面的catalina.bat文件,如下:(一处地方修改)
修改前: echo Using JAVA_HOME: "%JAVA_HOME%"
修改后: echo Using JAVA_HOME: "E:\Java\jdk1.7"
2、 修改bin文件夹下面的setclasspath.bat文件,如下:(三处地方修改)
修改前:set "JRE_HOME=%JAVA_HOME%" (ps:这个有两处地方,修改一处就行了,不行就两处都修改)
set _RUNJAVA="%JRE_HOME%\bin\java.exe"
set _RUNJDB="%JAVA_HOME%\bin\jdb.exe"
修改后:
set "JRE_HOME=E:\Java\jdk1.7"
set _RUNJAVA="E:\Java\jdk1.7\bin\java.exe"
set _RUNJDB="E:\Java\jdk1.7\bin\jdb.exe"
3、启动tomcat,系统正常访问。
5、 Tomcat 的启动窗口一闪而过
解决方法:
这中间的原因有好多种,最常见的解决办法就是使用run 命令,打开startup.bat 文件,找到下面这行:
call "%EXECUTABLE%" start %CMD_LINE_ARGS%
并将它修改为:
call "%EXECUTABLE%" run %CMD_LINE_ARGS%
这样, Tomcat 启动时就不会弹出新窗口,我们就可以观察Tomcat 的启动错误,并解决问题。

6、 TOMCAT启动报错:Address already in use:JVM_Bind
报错原因:
JVM被占用了,发布了其他的Java项目正在运行中,占用了端口。
解决方法:
在运行你想要发布的项目前,要确保JVM是处于stop的状态,端口冲突,关掉已经开启的一个tomcat程序,重新启动tomcat服务即可。
tomcat常用技巧的更多相关文章
- 【shell 大系】Linux Shell常用技巧
在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...
- oracle存储过程常用技巧
我们在进行pl/sql编程时打交道最多的就是存储过程了.存储过程的结构是非常的简单的,我们在这里除了学习存储过程的基本结构外,还会学习编写存储过程时相关的一些实用的知识.如:游标的处理,异常的处理,集 ...
- Vim 常用技巧:
Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...
- JS~~~ 前端开发一些常用技巧 模块化结构 &&&&& 命名空间处理 奇技淫巧!!!!!!
前端开发一些常用技巧 模块化结构 &&&&& 命名空间处理 奇技淫巧!!!!!!2016-09-29 17 ...
- Android ListView 常用技巧
Android ListView 常用技巧 Android TextView 常用技巧 1.使用ViewHolder提高效率 ViewHolder模式充分利用了ListView的视图缓存机制,避免了每 ...
- JavaScript常用技巧总结(持续添加中...)
在我学习过程中收集的一些常用技巧: typeof x !== undifined 判断x是否已定义: x === Object(x) 判断x是否为对象: Object.keys(x).length ...
- Eclipse调试常用技巧(转)
Eclipse调试常用技巧 转自http://daimojingdeyu.iteye.com/blog/633824 1. 条件断点 断点大家都比较熟悉,在Eclipse Java 编辑区的行头双击就 ...
- AS技巧合集「常用技巧篇」
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=254723&extra=page%3D2%26filter%3Dautho ...
- iPhone不为人知的功能常用技巧,看完后才发现很多用iPhone的人实在是愧对乔布斯! - imsoft.cnblogs
很多人花了四五千买部苹果,结果只用到四五百块钱的普通手机功能. iPhone不为人知的功能,常用技巧: 网上搜集整理的iPhone快捷键操作,虽然表面上iPhone按键只有一个HOME键,大部分操作都 ...
随机推荐
- zabbix 3.0 快速安装文档
下载地址:http://www.zabbix.com/download.php 官方文档:https://www.zabbix.com/documentation/3.0/manual/install ...
- 使用vue-cli脚手架搭建项目,保存编译时出现的代码检查错误(ESLint)
一.问题 出现这么写错误是什么原因呢?相信很多小白都会像我一样,第一次接触时有点二丈和尚摸不着头脑.其实是在你用vue-cli脚手架构建项目时用了ESLint代码检查工具,如下图 那么什么是ESLin ...
- 关于在VS 2013 Reshaper 中不能使用Alt+Enter 的解决
新装Vs 2013 ,感觉还是不错,但是很恶心的是居然,Resharper 万能的快捷键不能用,让洒家真是恶心极了. 通过Google 在StackOverflow 上发现了解决方法,但好像看他的 ...
- 关于运行robot framework 报错解决方法,ModuleNotFoundError: No module named 'robot'
报错: command: pybot.bat --argumentfile c:\users\76776\appdata\local\temp\RIDEiw0utf.d\argfile.txt --l ...
- BI中的报表业务功能授权使用"自定义主题"
- SpeechVoiceSpeakFlags枚举类型的详细解释
http://blog.csdn.net/zhou_xw6511/article/details/8313528
- 洛谷 P3381【模板】最小费用最大流
题目描述 如题,给出一个网络图,以及其源点和汇点,每条边已知其最大流量和单位流量费用,求出其网络最大流和在最大流情况下的最小费用. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S.T,分别表 ...
- Vue 使用 axios post请求后台数据时 404
今天遇到Vue 使用 axios post请求后台数据时 404 使用postman 就能获取到 网上找了大半天 终于找到了解决方法,传送门:https://www.jianshu.com/p/b10 ...
- python基础01—基础数据类型
数据类型 单位换算 最小的单位为bit,表示一个二进制的0或1,一般使用小写的b表示 存储的最小单位为字节(Byte),1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB ...
- POJ_2010 Moo University - Financial Aid 【堆预处理】
一.题面 POJ2010 二.分析 堆预处理 首先可以考虑吧随便取一个点,判断两侧的最小的总费用是多少,然后相加判断是否满足条件.如果直接判断会超时,所以需要用大根堆预处理一下.先看从分数最小的往最大 ...