当前位置:首页 > 云服务器

Spring Boot 应用启动失败:端口占用问题排查与解决

游戏科技网2026年09月14日 22:31云服务器20
描述:本文旨在帮助开发者解决 Spring Boot 应用在 IntelliJ IDEA 中启动时遇到的端口占用问题。通过分析错误信息,我们将引导你找到占用 8080 端口的进程,或者提供修改应用端口的解决方案,确保你的 Spring Boot 应用能够顺利启动。在使用 IntelliJ IDEA 开发…

Spring Boot 应用启动失败:端口占用问题排查与解决

本文旨在帮助开发者解决 Spring Boot 应用在 IntelliJ IDEA 中启动时遇到的端口占用问题。通过分析错误信息,我们将引导你找到占用 8080 端口的进程,或者提供修改应用端口的解决方案,确保你的 Spring Boot 应用能够顺利启动。

在使用 IntelliJ IDEA 开发 Spring Boot 应用时,你可能会遇到类似如下的错误信息:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

***************************

APPLICATION FAILED TO START

***************************

 

Description:

 

Web server failed to start. Port 8080 was already in use.

 

Action:

 

Identify and stop the process thats listening on port 8080 or configure this application to listen on another port.

 

 

Process finished with exit code 1

这表明你的 Spring Boot 应用尝试启动时,默认的 8080 端口已经被其他进程占用,导致应用启动失败。 解决这个问题通常有两种方法:找到并停止占用端口的进程,或者修改 Spring Boot 应用的端口配置。

方法一:查找并停止占用端口的进程

首先,我们需要确定哪个进程占用了 8080 端口。虽然 lsof -i :8080 命令没有输出,但并不意味着没有进程占用该端口。这可能是因为权限问题,或者该进程不是由当前用户启动的。

1. 使用 netstat 命令 (适用于 Linux/macOS/Windows):

netstat 是一个强大的网络工具,可以显示网络连接、路由表和网络接口信息。 使用以下命令可以查看占用 8080 端口的进程:

  • Linux/macOS: sudo netstat -tulnp | grep 8080
  • Windows: netstat -ano | findstr :8080

在 Linux/macOS 上,sudo 命令可能需要你输入管理员密码。命令的输出会显示占用 8080 端口的进程的 PID (进程ID)。

2. 使用任务管理器 (适用于 Windows):

在 Windows 上,你也可以使用任务管理器来查找占用 8080 端口的进程。

  • 打开任务管理器 (Ctrl + Shift + Esc)。
  • 切换到 "详细信息" 选项卡。
  • 找到 "PID" 列,如果没有,可以通过 "查看" -> "选择列" 来添加。
  • 根据 netstat 命令找到的 PID,在任务管理器中找到对应的进程,然后结束该进程。

3. IntelliJ IDEA 的 Services 窗口:

一个常见的情况是,你之前可能已经在 IntelliJ IDEA 中启动了 Spring Boot 应用,但没有正确关闭。IntelliJ IDEA 的 "Services" 窗口会显示正在运行的应用。检查 "Services" 窗口,看看是否有之前启动的 Spring Boot 应用实例。如果有,停止该实例。

Spring Boot 应用启动失败:端口占用问题排查与解决
PLS Marketing Ideas

使用成熟的框架生成营销活动概念、病毒式创意和营销策略,规划、创作内容,头脑风暴促销方案,制定品牌信息。

下载

找到占用 8080 端口的进程后,你可以使用 kill <PID> 命令 (Linux/macOS) 或在任务管理器中结束进程 (Windows) 来停止该进程。然后,重新启动你的 Spring Boot 应用。

方法二:修改 Spring Boot 应用的端口

如果无法找到或停止占用 8080 端口的进程,或者你希望避免将来再次出现端口冲突,你可以修改 Spring Boot 应用的端口配置。

1. 在 application.properties 或 application.yml 文件中配置:

在 src/main/resources 目录下,找到 application.properties 或 application.yml 文件。 如果没有,创建一个。添加以下配置来修改端口:

  • application.properties:

    1

    server.port=8089

  • application.yml:

    1

    2

    server:

      port: 8089

将 8089 替换为你想要使用的端口号。确保选择一个未被其他应用占用的端口。

2. 重新启动应用:

保存配置文件后,重新启动你的 Spring Boot 应用。应用现在应该在新的端口上运行。你可以在浏览器中访问 http://localhost:8089 (如果你的应用提供了 Web 接口) 来验证应用是否成功启动。

注意事项

  • 确保选择一个未被占用的端口。常用的端口包括 8081、8082、8083 等。
  • 如果你的 Spring Boot 应用部署在云服务器上,你需要确保防火墙允许访问你配置的端口。
  • 如果你使用的是 Docker 容器,你需要将容器的端口映射到宿主机的端口。

总结

端口占用是 Spring Boot 应用启动时常见的错误。通过本文提供的两种方法,你可以快速找到并解决端口占用问题,确保你的应用能够顺利启动。建议优先尝试查找并停止占用端口的进程,如果无法解决,再考虑修改应用的端口配置。在开发过程中,养成良好的习惯,及时关闭不再需要的应用实例,可以有效避免端口冲突。

“Spring Boot 应用启动失败:端口占用问题排查与解决” 的相关文章

5元云服务器:入门级新手首选

5元云服务器:入门级新手首选 我是一名刚毕业的大学生,对编程充满了热情,但现实总是骨感一些。刚踏入职场,我梦想着能独立开发一个网站或应用,却苦于没有足够的资源。买一台实体服务器太贵,租个虚拟空间又觉得…

6元服务器租用,高性价比VPS主机推荐

6元服务器租用,高性价比VPS主机推荐 记得去年我刚开始创业,做了一个小型网站来展示我的产品。那时,我手头紧,预算有限,却急着需要一个可靠的服务器来托管网站。作为一个普通上班族,我对技术懂得不多,但我…

2021年云服务器优惠套餐推荐

2021年云服务器优惠套餐推荐 嗨,朋友们!你是否曾经在深夜里,面对一堆代码和服务器错误,感叹说:“为什么我的项目老是卡顿?”如果是这样的话,那你可能正在寻找2021年云服务器优惠套餐的解决方案。作为…

云服务器市场增长

云服务器市场增长 大家好,作为一个每天依赖云服务器的开发者,我亲身感受到市场的飞速膨胀。想象一下,几年前我还得在办公室的老旧电脑前苦苦挣扎,处理数据时总是卡顿不堪,但现在,只需轻轻一点,就能在云端获得…

1元买走一台云服务器,这种天上掉馅饼的事存在吗?

1元买走一台云服务器,这种天上掉馅饼的事存在吗? 那天,我在咖啡馆里刷手机,偶然看到一个广告:“只需1元,就能买走一台高性能云服务器!容量无限,稳定快速,适合创业和学习。”我的心跳突然加速了。作为一个…

云服务器10元月:经济型服务价格新记录

云服务器10元/月:经济型服务价格新记录 最近,云服务器的价格被推向了一个新低,10元一个月的方案让许多人惊喜不已。这不仅仅是数字上的变化,更是科技服务普惠化的一个标志。云服务器作为一种基于云计算的虚…