如何解决Tomcat v9.0本地服务器端口占用问题?
解决Tomcat v9.0端口(8005、8080)被占用问题
问题描述
本地Tomcat v9.0服务器所需的多个端口(8005、8080)已被占用。服务器可能已在另一个进程中运行,或者某个系统进程正在使用这些端口。要启动此服务器,您需要停止其他进程或修改端口号。
该错误在单独于现有Eclipse之外新安装STS后出现,以下是可行的解决方法:
方案一:终止占用端口的进程
Windows系统操作
- 打开命令提示符,执行以下命令分别查询8005、8080端口的占用进程ID(PID):
netstat -ano | findstr "8005" netstat -ano | findstr "8080" - 根据返回的PID,执行命令强制终止进程(替换
<PID>为实际查到的进程号):taskkill /F /PID <PID>
Linux/macOS系统操作
- 打开终端,执行以下命令查询端口占用进程:
lsof -i :8005 lsof -i :8080 - 执行命令终止进程(替换
<PID>为实际查到的进程号):kill -9 <PID>
方案二:修改Tomcat端口配置
- 找到STS中Tomcat的配置目录,进入
conf文件夹。 - 打开
server.xml文件,修改以下两处端口配置:- 关闭端口(原8005):
<Server port="8006" shutdown="SHUTDOWN"> - HTTP服务端口(原8080):
<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
- 关闭端口(原8005):
- 保存文件后,重启STS中的Tomcat服务器。
额外排查建议
- 检查是否有其他Tomcat实例(比如之前Eclipse配置的Tomcat)在后台运行,直接停止对应服务器或进程即可。
- 确认是否有第三方软件(如代理工具、下载工具)占用目标端口,可通过任务管理器(Windows)或活动监视器(macOS)排查。
内容的提问来源于stack exchange,提问作者melona96
相关产品推荐
相关产品推荐

