首页 > 网站 > 建站经验 > 正文

tomcat常见的错误与解决方案小结

2019-11-02 16:30:54
字体:
来源:转载
供稿:网友

一、tomcat启动时错误

问题1:The JAVA_HOME environment variable is not defined This environment variable is needed to run this program;

解决:没有在tomcat的配置文件.bash_profile中设置环境变量JAVA_HOME,具体设置方法为:加入如下几行:

 JAVA_HOME=/home/tomcat/j2sdk1.4.2_08(具体值要以实际的jdk安装路径为准) export JAVA_HOMECLASSPATH=/home/tomcat/j2sdk1.4.2_08/lib/tools.jar:/home/tomcat/j2sdk1.4.2_08/lib/dt.jar export CLASSPATH

问题2:Error occurred during initialization of VM Could not reserve enough space for object heap

解决:在tomcat的bin目录下,catalina.sh文件的tomcat内存参数配置过大,超过机器可用内存总数造成,修改到适当的值即可,修改的参数为:JAVA_OPTS="-Xms50m -Xmx60m"

问题3:tomcat启动时报某个目录没有权限,启动失败,或者不能执行某些jsp页

解决:tomcat需要tomcat用户具有一些目录和文件的相应权限, 所有目录应该具有读写执行(浏览)的权限,jsp,class文件应该最少具有读权限, 一些文件需要写权限,下面是已知的需要读写权限文件的列表:

       $CATALINA_HOME/logs下所有文件

       $CATALINA_HOME/work下所有文件

       $CATALINA_HOME/publish/main/count.txt文件

       $CATALINA_HOME/publish/chatroom/resource下的所有.xml文件

所有上传图片目录都需要写权限。

改变文件目录权限的方法:执行下面命令,设置所有的tomcat安装下的文件和目录,可以保证执行,但是不是很安全。

1. 设置tomcat上级目录/opt所有用户都有读写执行权限:

 chmod 777 [tomcat的上级目录]

2. 设置tomcat5.0.28目录下的所有文件的属主为tomcat:

 chown -R tomcat [tomcat安装目录]

3. 设置所有tomcat5.0.28下的所有文件和目录的属主(tomcat)具有读写执行权限

 chmod 700 -R /opt/tomcat5.0.28

问题4:执行startup.sh文件后告诉地址已经使用,导致tomcat不能启动

解决:可能是前一次执行./shutdown.sh文件关闭tomcat时没有停止已经启动的Java进程,而这个进程仍然在监听tomcat所使用的端口,或者有另外一个tomcat正在运行,server.xml文件中的监听端口和当前tomcat冲突。

使用下面命令查看当前系统是否有正在监听的端口(8080--webcache, 90--www或http).

     1. 列出所有系统正在监听的端口和绑定的地址netstat -l

     2. 找出当前系统中的所有进程,管道符号过滤输出显示包含java字符串的行

 ps -A |grep java  tty time proc 1021 ? java 

     3. 结束一个指定的进程:

 kill [进程号]

     4. 强制杀死一个进程:

 kill -9 [进程号]

     如果确定不是别的tomcat运行导致的冲突或者没有java进程运行可以再次运行startup.sh文件启动tomcat

二、Tomcat 运行时错误及解决

问题1: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Network error IOException: Connection refused: connect)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表