异常解决——Tomcat启动异常:Cannot assign requested address
Posted 执笔记忆的空白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异常解决——Tomcat启动异常:Cannot assign requested address相关的知识,希望对你有一定的参考价值。
异常分析:
tomcat启动的时候报错,提示无法使用8005端口,因为使用的默认端口,tomcat的8005端口是用来停止服务的。
因为是内网,无法放图,我只能把异常信息打印出来了:java.net.BindException: Cannot assign requested address(Bind failed)
问题原因:
可能出现问题的原因:
1、8005端口确实被占用了
2、socket大量创建,并没有被回收,具体参考:参考
3、服务器/etc/hosts 文件的localhost配置不是本机ip 或者不是 127.0.0.1 ,具体可以参考:参考
解决方案:
1、当怀疑是8005端口被占用的时候,我用root用户查看端口情况,如果发现被占用,则可以根据实际情况决定是更换tomcat 8005端口为其他端口还是kill掉占用端口的进程。具体命令如下:
netstat -lnp|grep 8005
这里我发现端口并没有被占用,而且我更改tomcat的conf目录下的server.xml文件,更改8005端口为6667端口,结果启动的时候还是提示6667端口无法使用。
2、当第一种解决不了的时候,我利用原因2的参考资料进行了socket回收:
sysctl -w net.ipv4.tcp_tw_recycle=1;
结果发现并不是这个原因
3、突然想到最近迁移了服务器,服务器IP都进行了更换,会不会有可能/etc/hosts的localhost映射的ip没进行更换。
所以直接
vim /etc/hosts
找到对应设置localdomain4的ip,更换成服务器更改后的ip , 重启服务器
reboot
重启服务器后,再重新启动tomcat,问题解决!
这里还应该注意看看 /etc/sysconfig/network-scripts/ 目录下的ifcfg-eth0 或者 ifcfg-lo文件的IP配置是否正确!
注意事项
一切操作以root用户操作。否则没权限!
以上是关于异常解决——Tomcat启动异常:Cannot assign requested address的主要内容,如果未能解决你的问题,请参考以下文章
部署Tomcat服务时,解决Cannot invoke Tomcat Manager 异常
tomcat 异常:Caused by: org.apache.catalina.LifecycleException: The connector cannot start since the sp
解决Tomcat启动时出现的The APR based Apache Tomcat Native library异常
java.lang.RuntimeException: Cannot create a secure XMLInputFactory 异常处理