Window server 服务器跑tomcat时 发现system服务占用了80端口

本文介绍了解决系统服务SQLServerReportingServices占用80端口的问题,通过关闭该服务来释放端口。

一般出现此问题的原因是:系统服务 SQL Server Reporting Services 占用了80端口 关闭即可

当在 Eclipse 中使用 Tomcat 服务器,如果提示“端口占用”,通常是因为 Tomcat 启动所需的端口(如 80808005、8009 等)已经被其他进程占用。以下是详细的解决方法和原因分析: --- ### **解决方法** #### **1. 查看并终止占用端口进程** **步骤:** - 打开命令行(Windows:cmd 或 PowerShell;Mac/Linux:Terminal)。 - 执行以下命令查看哪个进程占用Tomcat 的默认端口(通常是 8080): ```bash netstat -ano | findstr :8080 ``` > 如果是 Linux/macOS: ```bash lsof -i :8080 ``` 这会输出类似如下内容: ``` TCP 0.0.0.0:8080 LISTENING 12345 ``` 其中 `12345` 是占用端口进程 PID。 - 终止该进程: ```bash taskkill /PID 12345 /F ``` > Linux/macOS: ```bash kill -9 12345 ``` --- #### **2. 修改 Eclipse 中 Tomcat端口号** 如果不想终止原有进程,可以修改 Tomcat端口: **步骤:** 1. 在 Eclipse 中打开 **Servers** 视图(Window → Show View → Other → ServerServers)。 2. 双击你配置的 Tomcat 服务器(如 Tomcat v9.0 Server),会打开配置页面。 3. 找到 **Ports** 区域: - **HTTP/1.1**: 默认 8080 → 改为 8081 或其他可用端口 - **Shutdown**: 默认 8005 → 可改为 8006 - **AJP/1.3**: 默认 8009 → 可改为 8010 4. 保存配置(Ctrl + S)。 5. 重新启动 Tomcat。 > 修改后访问地址变为:`http://localhost:8081/your-app` --- #### **3. 检查是否已有 Tomcat 实例在运行** 有你在命令行或服务中启动了独立的 Tomcat,而 Eclipse 又尝试启动另一个实例,导致冲突。 - 检查 Windows 服务中是否有 Apache Tomcat 正在运行: - 按 Win + R → 输入 `services.msc` → 查找 "Tomcat" → 停止它。 --- #### **4. 清理并重新发布项目** Eclipse 的服务器配置可能损坏: - 在 Servers 视图中: - 右键 Tomcat 服务器 → **Clean...** - 然后右键 → **Publish** - 或者删除当前服务器(不要勾选“Delete modules”),再重新添加新的 Tomcat 服务器。 --- ### **问题产生的原因** - **端口冲突**:多个应用(包括另一个 Tomcat、Spring Boot 应用、IIS、Skype、MySQL Workbench 等)可能默认使用 8080 端口。 - **未正常关闭的进程**:之前启动的 Tomcat 没有完全退出,仍占用端口。 - **Eclipse 配置残留**:旧的服务器配置未清理干净。 - **防火墙或安全软件**:某些软件会监听特定端口造成干扰(较少见)。 --- ### **验证端口是否空闲的 Java 代码示例** 你可以用一段简单的 Java 程序检测某个端口是否被占用: ```java import java.net.ServerSocket; public class PortChecker { public static boolean isPortAvailable(int port) { try (ServerSocket socket = new ServerSocket(port)) { return true; } catch (Exception e) { return false; } } public static void main(String[] args) { int port = 8080; if (isPortAvailable(port)) { System.out.println("端口 " + port + " 可用"); } else { System.out.println("端口 " + port + " 已被占用"); } } } ``` 这段代码可用于调试判断端口状态。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值