关于Tomcat在启动时的socket bind failed 730048 错误

一、错误产生原因

一般Tomcat启动不会出现这种错误,而这种错误的产生情况大多数为编辑器执行了重启操作,但在重启之前没有手动停止Tomcat服务。

二、具体分析

1、socket bind failed 730048 的含义

经过百度翻译(权威翻译),这句话的意思为套接字绑定错误;

套接字通信  是应用层与TCP/IP协议族通信的中间抽象层,它是一组接口。应用层通过调用这些接口发送和接收数据。

2、关联报错

继续看控制台报错,一般还会出现其他错误,类似于[Http 0.0.0.0.8080]这种形式,很直观的可以看到8080端口号,其实就是端口号被占用,导致套接字绑定失败;

3、错误原因分析

综合1、2分析,套接字绑定错误,必定是当前Tomcat的套接字绑定失败了,而端口号被占用也一定是当前Tomcat的端口号被占用,导致启动失败。

为什么会出现绑定失败与端口号占用问题呢?

本例中,产生此错误的具体操作是:

卸载IDEA插件后,直接点击立即重启IDEA,而此时Tomcat已经在运行中;直接重启后,Tomcat实际上是还在运行的,所以当IDEA重启后,点击run或debug运行Tomcat就会导致此问题发生。

4、解决办法

很简单,就是关闭之前的Tomcat即可,具体操作有三种。

  1. 最直接的办法:重启电脑,俗话说:重启能解决99%的问题,剩下的1%问题说明该换一台机器了。
  2. 通过任务管理器结束进程解决:在后台进程寻找javax的进程,结束它即可;名为Java Update 的进程不要关闭了。
  3. 通过命令行来终止进程:详见另一篇文章。通过cmd关闭tomcat,包括HTTP和JVX的port_麻花猫耳朵的博客-CSDN博客_jvx项目通过cmd关闭tomcat;包括关闭HTTP port 为8080或者其他和JMX port为8859或者其他pid的tomcat服务进程。第一步:按下win+R键,输入cmd,点击确定第二步:输入netstat -ano|findstr 8080,查询出8080端口的pid;或者输入8859的JMX port,查询出8859的端口;第三步:输入taskkill /pid 占用进程的pid -f;本次输入的是:taskkill /pid 16228 -fhttps://blog.csdn.net/sdibtjf1702/article/details/110438235
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值