java.net.BindException: Address already in use: bind异常解决方法

问题描述

博主今天用SpringBoot整合Dubbo的时候出现了一个异常(如下图)
在这里插入图片描述之前遇到好多次这种异常了,出现的地点都是我在启动服务端Service的时候,其实看图就能发现这个异常的主要原因是端口号被占用,但是这个异常出现并不会影响我的程序运行,但总归是个BUG,这里就记录一下解决方法

解决方法

前言:
这里的冲突的是dubbo服务协议的端口号,因为dubbo的服务端默认会以端口号20880为起点随机分配,但是你同时启动多个服务就会出现这种问题

解决方法:
在服务端service的properties文件里面自定义配置dubbo服务协议的端口号
在这里插入图片描述

配置完成后重启service服务之后java.net.BindException: Address already in use: bind异常就会消失

(完)

### 解决 Goland 中 Java 程序运行时遇到的 `java.net.BindException: Address already in use` 问题 当在 Goland 运行 Java 应用程序并遇到 `java.net.BindException: Address already in use` 错误时,这通常意味着应用程序尝试绑定到已经被其他进程使用的网络端口[^1]。 #### 查找占用端口的进程 为了释放被占用的端口,首先需要识别哪个进程正在使用目标端口。可以通过命令提示符执行如下命令来查找: ```cmd netstat -ano | findstr ":<port>" ``` 其中 `<port>` 是要查询的具体端口号。此命令会返回一系列信息,其中包括监听该端口的服务对应的 PID(进程 ID)。通过这个 PID 可以进一步定位具体的应用程序实例[^3]。 #### 结束占用端口的进程 一旦获得了占用特定端口的进程 PID 后,在 Windows 的任务管理器中找到对应 PID 的条目,并选择结束该进程的操作。这样就可以腾出之前被占有的端口资源供新的 Java 应用连接使用了。 #### 修改应用配置文件中的端口号设置 如果频繁遭遇此类冲突情况,则建议考虑调整项目本身的配置参数,比如更改默认启动服务所依赖的 TCP/UDP 端口数值,从而避开已知容易发生碰撞的范围。对于 Spring Boot 类型的应用来说,可以在 application.properties 或者 application.yml 文件里指定 server.port 属性值为未被占用的一个有效整数[^2]。 ```properties server.port=8090 ``` 或者如果是 XML 配置形式的话则可能是这样的写法: ```xml <property name="serverPort" value="8090"/> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值