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键,大部分操作都 ...
随机推荐
- 泛型2(lambda表达式/参数绑定)
lambda 表达式: Lambda表达式完整的声明格式如下: [capture list] (params list) mutable exception-> return type { fu ...
- 题解 CF520E 【Pluses everywhere】
题目链接 ps:可能组合数一不小心打错了,请发现的大佬提出,谢谢. 我们来讨论每一位数$a_{i}$被算了多少次. 总共有$n-1$个空位可以放$'+'$所以,$a_{i}$左边有$i-1$个空位,右 ...
- .Generator与其他异步处理方案
1.Generator与其他异步处理方案 以前,异步编程的方法,大概有下面四种. 1.1 回调函数 JavaScript 语言对异步编程的实现,就是回调函数.所谓回调函数,就是把任务的第二段单独写在一 ...
- CF165D Beard Graph
$ \color{#0066ff}{ 题目描述 }$ 给定一棵树,有m次操作. 1 x 把第x条边染成黑色 2 x 把第x条边染成白色 3 x y 查询x~y之间的黑边数,存在白边输出-1 \(\co ...
- 快速排序(一) 思想 JAVA实现
已知数组59.71.37.56.88.96.21.58.48.43 采用快速排序将数组有序. 快速排序同样采用了“分治策略”,使用递归的思路来实现算法. 快速排序的算法思想: 9.71.37.56.8 ...
- JS 的冒泡排序
// 冒泡排序 从小到大 function maoPaoPaiXu(arr) { // 控制循环的比较的轮次 for (var i = 0; i < arr.length - 1; i++) { ...
- 把display 属性改为block样式变化问题
可能的值 值 描述 none 此元素不会被显示. block 此元素将显示为块级元素,此元素前后会带有换行符. inline 默认.此元素会被显示为内联元素,元素前后没有换行符. inline-blo ...
- TX2中设备树烧写
将要修改的设备树文件拷贝到下面的目录替换相应的文件 ../64_TX2/Linux_for_Tegra_tx2/kernel/dtb 用micro-USB线连接TX2上的USB OTG口和PC机的US ...
- php 替换 oracle 数据字段中“看不见”换行符号
工作需要,把oracle中的数据导出csv,导出代码如下:<?php$file_name = "申請書承認(予定休出).csv";header("Content-D ...
- 什么是redis?Reids的特点是什么?Redis支持的数据类型有哪些?
首先,分布式缓存框架 可以 看成是nosql的一种 (1)什么是redis? redis 是一个基于内存的高性能key-value数据库. (有空再补充,有理解错误或不足欢迎指正) (2)Reids的 ...