Spring Boot应用在Spring Suite Tool启动失败:8080端口被占用
解决Spring Boot应用8080端口占用启动失败问题
一、重新确认端口占用进程的排查与终止
如果之前用命令没解决,大概率是权限不足或命令执行有误,按系统重新操作:
- Windows系统:
- 用管理员权限打开命令提示符,执行:
netstat -ano | findstr ":8080",找到输出最后一列的数字(即进程PID) - 执行强制终止命令:
taskkill /F /PID [替换为找到的PID号],/F参数确保强制关闭进程,避免进程拒绝终止
- 用管理员权限打开命令提示符,执行:
- Linux/macOS系统:
- 执行:
sudo lsof -i :8080,找到结果里的PID列数字 - 执行:
sudo kill -9 [替换为找到的PID号],sudo确保有权限终止系统或其他用户的进程
- 执行:
二、直接修改应用监听端口(更快捷)
不想折腾杀进程的话,直接修改Spring Boot的监听端口:
- 修改配置文件:
- 打开项目里的
application.properties,添加一行:server.port=8081(8081可替换为任意未被占用的端口) - 若用YAML配置,打开
application.yml,添加:server: port: 8081
- 打开项目里的
- STS启动时临时指定端口:
- 右键项目 →
Run As→Run Configurations - 找到
Spring Boot App下的你的应用配置,切换到Arguments标签 - 在
VM arguments栏添加:-Dserver.port=8081,或者在Program arguments栏添加:--server.port=8081,点击Run启动
- 右键项目 →
三、排查特殊异常情况
如果以上方法都无效,检查这几点:
- 确认修改的配置文件是当前启动环境生效的,比如启动了
dev环境,要改application-dev.properties而非主配置文件 - 打开系统任务管理器(Windows)或活动监视器(macOS),找到所有Java进程,手动结束残留的Spring Boot进程
- 排查是否有防火墙、安全软件拦截端口,但这种情况一般报错不是“端口已被占用”,可作为备选排查项
内容的提问来源于stack exchange,提问作者Sai Teja
相关产品推荐
相关产品推荐

