Spring Boot 项目问题:Web server failed to start. Port 5566 was already in use.

  • 在启动一个 Spring Boot 项目时,遇到以下错误信息


    APPLICATION FAILED TO START


    Description:

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

    Action:

    Identify and stop the process that's listening on port 5566 or configure this application to listen on another port.

问题原因
  • Spring Boot 项目使用的的端口 5566 已被占用,错误信息已明确指出

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

处理策略
  1. 终止占用端口的进程
bash 复制代码
# 查找占用进程

netstat -ano | findstr 【端口】
bash 复制代码
# 查看进程 ID 对应的程序

tasklist | findstr 【进程 ID】
bash 复制代码
# 终止进程

taskkill /PID 【进程 ID】 /F
  1. 或者,修改 Spring Boot 项目的端口
yml 复制代码
server:
  port: 6677 # 修改为其他未被占用的端口
连带问题
  1. 如下,是 Spring Boot 项目在端口被占用后,引发了数据库连接池关闭的连带问题

  2. 此问题在端口占用问题被处理后也会得到处理

    org.mybatis.spring.MyBatisSystemException
    at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:97)
    at org.mybatis.spring.SqlSessionTemplateSqlSessionInterceptor.invoke(SqlSessionTemplate.java:439) at jdk.proxy2/jdk.proxy2.Proxy61.selectOne(Unknown Source)
    at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:160)
    ...

    Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection

    复制代码
     at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
     at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:153)
     at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
     at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
     ...

    Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:83)
    at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:80)
    at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:67)
    at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:337)
    ...
    Caused by: java.sql.SQLException: HikariDataSource HikariDataSource (null) has been closed.
    at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:96)
    at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
    ...

相关推荐
老白干2 小时前
jjwt 0.9.1 在 JDK 11+ 上的两个“坑”与完整解决方案
java·python·log4j
圆山猫8 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
城管不管9 小时前
ReAct、Plan-and-Execute、Reflection 三大智能 Agent 范式核心区别
java·人工智能·算法·spring·ai·动态规划
郭老二9 小时前
【前端】vue3:编译步骤
前端
IT小白杨9 小时前
从环境制备到自动化工作流:多账号运营的工程化架构拆解
java·经验分享·自动化·安全架构·指纹浏览器
豆瓣鸡10 小时前
算法日记 - Day3
java·开发语言·算法
萧瑟余晖10 小时前
Java深入解析篇九之NIO详解
java·网络·nio
不在逃避q10 小时前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
mldong10 小时前
从 mldong 到 jeeflow:一个工作流引擎的独立进化
后端
夏殇之殁10 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript