遇到的Tomcat问题

3/8/2017来源:ASP.NET技巧人气:490

一. 启动tomcat时 错误:  代理抛出异常错误:java.rmi.server.ExportException: Port already in use: 1099; nested exceptionis: java.net.BindException: Address already in use: JVM_Bind

1)这里说的是1099端口被其它进程占用了.

找出占用1099端口的进程,进入windows命令,查看什么进程占用了1099端口

使用命令:netstat-aon|findstr 1099 找出占用1099端口的进程,

然后关闭占用该端口的进程:taskkill -f -pid 3756

这样就可以正常启动Tomcat了.

参考:http://www.cnblogs.com/xdp-gacl/p/5288399.html

2)本地终端的tomcat命令需要改变一下:

$lsof-i:1099   

$kill-9 1114

二. 问题:shutdown虽然把服务杀了,但是进程仍然在,而且是sleep的进程。导致日志虽然被删除了,写日志的进程一直存在。磁盘很快就被打满。

解决方法:

Catalina.sh增加了111行这一句(CATALINA_PID=$PRGDIR/pid),让他能找到相应的Pid,在shutdown的时候,把该pid进程一并杀掉

三. log4j:WARN No such property [maxFileSize] in org.apache.log4j.DailyRollingFileAppender.

警告的意思是DailyRollingFileAppender这个类不带属性maxBackupIndex,maxFileSize的,它是按日期来保存日志的,所以不需要设置该2个属性,如果想要设置日志文件的大小,可以扩展RollingFileAppender这个类,平时开发中日志配置文件中需要注意设置。

如果需求是既要日志,又要定期删除,参照:http://blog.csdn.net/qianqianstd/article/details/60467768

四 . 禁止tomcat生成catalina.out、localhost_access_log、host-manager.log、localhost.log、manager.log这些文件

1、找到tomcat目录conf,logging.properties把这个文件重命名(推荐),其实删掉也可以但是不建义

      这样就不会生成host-manager.log、localhost.log、manager.log、catalina.log这些文件

      注:把 conf/loging.properties 中的等级全都等于OFF 也不行,我试过

2、通过修改catalina.sh配置可以控制tomcat不生成该文件。

只要将 if [ -z "$CATALINA_OUT" ] ; then   CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out 修改为 if [ -z "$CATALINA_OUT" ] ; then   CATALINA_OUT=/dev/null

这样就不会生成catalina.out文件了

3、打开conf/server.xml文件

注释掉<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" />这行代码,这样就不会生成localhost_access_log这个文件

转自:http://blog.csdn.net/tcq6586232/article/details/48268031

五. Error starting static Resources java.lang.IllegalArgumentException

网上找到很多方法,

1、有说的删错东西的

其实是在删除了tomcat的webapps下的一个工程后,有些东西没删完全,出现“严重:Error starting static Resources错误”,提示Java.lang.IllegalException异常,出现这种情况的原因在于,删除的时候一些配置等没有完全删除。解决方法如下:

     1、把conf/server.xml配置文件中的与刚删除的工程的相关连接配置删除;

     2、把work/Catalina/localhost文件夹下的与删除工程的文件夹删除;如果不知道哪个才是与删除项目相关的文件夹,把work目录下的文件夹全部删除也可以,不会影响其他工程,在再次运行其他项目时,会自动重建;

2、还有说是文件名称问题,检查eclipse中的项目名称和Wordspace中的名称是否一致

3、我的问题和上述都不同,原来是选定运行的tomcat的服务器时,新建一个服务器就好,不要多个项目同时用一个。

转自:http://blog.csdn.net/aeolus1019/article/details/9257759

六 .tomcat启动的时候发现一个错误 Setting property 'debug' to '0' did not find a matchin

tomcat配置中的连接池的一个错误

在:

警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property '

跟踪后发现是连接池的配置问题:

<Context path="/n" docBase="E:/aWorkingCopy/ndaoti/war" debug="0" reloadable="true" crossContext="false">  

把debug="0"去除即可。

分析:tomcat的6.0.16这个版本中可能用别的属性替代了debug功能。