socket端口冲突问题

在服务器上重新部署工程的时候报socket端口冲突。

java.net.BindException: Address already in use 
         at java.net.PlainSocketImpl.socketBind(Native Method) 
         at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365) 
         at java.net.ServerSocket.bind(ServerSocket.java:319) 
         at java.net.ServerSocket.<init>(ServerSocket.java:185) 
         at java.net.ServerSocket.<init>(ServerSocket.java:97) 
         at com.hundsun.epserver.monitor.Server.<init>(Server.java:76) 
         at com.hundsun.epserver.monitor.Server.<clinit>(Server.java:50) 
         at com.hundsun.epserver.servlet.InitServlet$1.run(InitServlet.java:65) 

 

服务器程序都使用固定的端口. 当服务器程序关闭后, 有可能它的端口还会被占用一段时间, 如果此时立刻在同一个主机上重启服务器程序, 由于端口已经被占用, 使得服务器程序无法绑定到该端口, 服务器启动失败。
为了确保一个进程关闭了 ServerSocket 后, 即使操作系统还没释放端口, 同一个主机上的其他进程还可以立即重用该端口, 可以调用 ServerSocket 的 setResuseAddress(true) 方法。
添加 serverSocket.setReuseAddress(true);

修改socket后一直在报:

 

java.net.SocketException: Socket is not bound yet
        at java.net.ServerSocket.accept(ServerSocket.java:419)

 

异常。。。我真是摸不着头脑了。。。。。。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值