windows 端口号被占用,查找及处理

本文介绍如何通过netstat和taskkill命令解决端口8080被占用的问题,确保本地服务启动不再受阻。首先使用netstat-ano|findstr8080查找占用端口8080的线程PID,然后利用taskkill/f/pidPID强制结束该进程,从而释放端口。

下图中

1.netstat -ano|findstr 8080命令是查找端口8080 线程,其中19720是pid。

2.taskkill /f /pid 19720即终止进程。

3.接下来本地启动服务就不会报端口8080被占用了,然后还能查到当前使用8080端口的线程 。

Windows系统中启动JAR文件时,如果遇到端口号占用的问题,通常是因为目标端口已经被其他进程占用。以下是详细的解决方法: ### 查看端口占用情况 1. 打开命令提示符(CMD),执行以下命令以查看指定端口占用情况(以8080端口为例): ```bash netstat -ano | findstr :8080 ``` 该命令会列出所有使用8080端口的进程,并显示其PID(进程ID)[^2]。 ### 根据PID查找并终止占用端口的进程 1. 使用以下命令根据PID查找对应的进程: ```bash tasklist | findstr :<PID> ``` 将`<PID>`替换为上一步中找到的PID值。这将显示与该PID相关的进程信息[^2]。 2. 如果确认该进程不再需要,可以使用以下命令终止该进程: ```bash taskkill /f /pid <PID> ``` 同样,将`<PID>`替换为实际的进程ID[^4]。 ### 使用批处理脚本自动处理端口占用 1. 可以编写一个批处理脚本来自动化上述过程。下面是一个示例脚本,它会先检查并终止占用8060端口的进程,然后启动指定的JAR文件: ```bat @echo off & setlocal EnableDelayedExpansion set obj[0]=8060 set port=0 set pid=0 for /f "usebackq delims== tokens=1-2" %%a in (`set obj`) do ( set port=%%b for /f "tokens=5" %%m in ('netstat -aon ^| findstr ":%%b"') do ( set pid=%%m ) if "!pid!"=="0" ( echo 端口号【!port!】没有占用 ) else ( echo 端口号【!port!】相关进程以杀死 taskkill /f /pid !pid! ) set pid=0 ) java -jar link.jar pause ``` 这个脚本首先定义了要检查的端口号(这里是8060),然后遍历这些端口号,检查每个端口是否被占用,并终止占用端口的进程,最后启动JAR文件[^4]。 ### 启动JAR文件 1. 在确保端口未被占用的情况下,使用以下命令启动JAR文件: ```bash java -jar yourfile.jar ``` 或者,如果希望不显示控制台窗口,可以使用`javaw`命令: ```bash javaw -jar yourfile.jar ``` ### 注意事项 - 在使用`javaw`时,需要注意其与`java`的不同之处,特别是在处理中文字符时可能会出现问题。因此,在需要处理中文的情况下,建议使用`java`命令[^3]。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值