项目启动报错端口被占用

报错如下:

Description:

The Tomcat connector configured to listen on port 20000 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 20000, or configure this application to listen on another port.

解决如下:

使用Win+R,输入“cmd”进入“命令提示符”,输入命令

netstat -aon|findstr "10000"

可以看到占用的进程号

在这里插入图片描述
在 “任务管理器” 中找到对应的 pid

右键,点击 “结束任务”

在这里插入图片描述

### 解决 Java 应用程序启动时因端口占用而产生的错误 当遇到 `java.net.BindException: Address already in use` 错误时,表明指定的网络端口已经被其他进程占用。这通常发生在尝试启动多个实例的应用服务器上,如 Apache Tomcat 或者在同一台机器上的不同服务之间存在冲突。 对于此类问题有几种解决方案: #### 方法一:终止已存在的Tomcat实例 如果确认是另一个 Tomcat 实例正在运行并占用了目标端口号,则可以结束该进程来释放端口资源。可以通过命令行工具查找并杀死相应的进程 ID (PID),具体操作如下所示: ```bash # 查找监听特定端口的服务及其 PID lsof -i :8005 | grep LISTEN # 使用 kill 命令停止对应进程 kill -9 <pid> ``` #### 方法二:更改Tomcat配置文件中的端口号 另一种方法是在不关闭现有服务的情况下修改应用服务器使用的默认端口设置。编辑位于 `$CATALINA_HOME/conf/server.xml` 文件内的相应部分,调整 HTTP/HTTPS 连接器标签 `<Connector>` 的属性值为未被占用的新端口号[^1]。 ```xml <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- 更改为 --> <Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> ``` #### 方法三:检测并避免端口冲突 为了避免未来再次发生类似的端口冲突情况,在部署之前应该先检查是否有其他应用程序已经在使用计划分配给新项目端口。Linux 和 macOS 用户可利用 `netstat`, Windows 则可以用 `netstat.exe` 来查看当前系统的开放端口列表以及它们的状态信息。 ```bash # Linux/macOS 下执行 netstat 检查端口状态 sudo netstat -tuln | grep 8005 ``` 通过上述措施之一即可有效处理由于端口重复绑定所引发的一系列异常状况,并确保 Java Web 应用能够正常启动和服务于客户端请求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值