linux springboot项目启动端口被占用 Port 8901 was already in use.

....eb server failed to start. Port 8901 was already in use.Action:Identify and stop the process that's listening on port 8901 or configure this application to listen on another port.

问题分析

这个错误表明端口 8901 已被其他进程占用。为了启动你的应用,你需要执行以下操作:

确定哪个进程占用了端口 8901。
停止占用端口的进程,或者 更改应用的端口配置。

解决步骤

1. 查找占用端口的进程

在 Linux 或 Windows 系统中,可以通过以下命令找到占用端口 8901 的进程。

Linux 系统

sudo netstat -tuln | grep 8901

或者使用 ss 命令:

sudo ss -tuln | grep 8901

输出示例:

tcp        0      0 0.0.0.0:8901            0.0.0.0:*              LISTEN      12345

LISTEN 表示有进程在监听端口。
12345 是占用端口的进程 ID (PID)。

Windows 系统

打开命令提示符,运行:

netstat -ano | findstr 8901

输出示例:

TCP    0.0.0.0:8901           0.0.0.0:0              LISTENING       12345

12345 是占用端口的进程 ID (PID)。

2. 停止占用端口的进程

Linux

使用 kill 命令停止占用端口的进程。

sudo kill -9 <PID>

将 替换为上一步中查找到的进程 ID,例如:

sudo kill -9 12345

如果不知道该进程是否重要,可以先查看其详细信息:

ps -p <PID> -o user,pid,cmd

Windows

使用 taskkill 命令结束进程。

根据 PID 停止进程:

taskkill /PID <PID> /F

示例:

taskkill /PID 12345 /F

如果想进一步了解该进程:

tasklist /FI "PID eq <PID>"

3. 配置应用使用其他端口

如果你无法终止占用端口的进程,可以更改应用的监听端口。

Spring Boot 应用
修改应用的默认端口号:

在 application.properties 文件中添加或修改:

server.port=8080

或者使用命令行参数启动应用:

java -jar myapp.jar --server.port=8080

其他框架
查找框架文档,调整端口配置。

4. 确认问题解决

重新启动应用,确保端口不再被占用。如果需要验证监听状态,运行:

Linux:

sudo netstat -tuln | grep <new_port>

Windows:

netstat -ano | findstr <new_port>

总结

查找占用端口的进程:netstat 或 ss。
停止占用端口的进程:kill(Linux)或 taskkill(Windows)。
修改应用监听的端口:更改配置或使用命令行参数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/493988.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MFC/C++学习系列之简单记录13

MFC/C学习系列之简单记录13 前言memsetList Control代码注意 总结 前言 今天记录一下memset和List control 的使用吧&#xff01; memset memset通常在初始化变量或清空内存区域的时候使用&#xff0c;可以对变量设定特定的值。 使用&#xff1a; 头文件&#xff1a; C&#…

C# cad启动自动加载启动插件、类库编译 多个dll合并为一个

可以通过引用costura.fody的包&#xff0c;编译后直接变为一个dll 自动加载写入注册表、激活码功能: 【CAD二次开发教程-实例18-启动加载与自动运行-哔哩哔哩】 https://b23.tv/lKnki3f https://gitee.com/zhuhao1912/cad-atuo-register-and-active

Android Studio AI助手---Gemini

从金丝雀频道下载最新版 Android Studio&#xff0c;以利用所有这些新功能&#xff0c;并继续阅读以了解新增内容。 Gemini 现在可以编写、重构和记录 Android 代码 Gemini 不仅仅是提供指导。它可以编辑您的代码&#xff0c;帮助您快速从原型转向实现&#xff0c;实现常见的…

固定电话采用的是模拟信号还是数字信号?如果通话两端采用不同的信号会发生什么?

固定电话信号大揭秘&#xff1a;模拟与数字信号的纠缠 模拟信号 VS 数字信号&#xff1a;谁是电话界的“老江湖”&#xff1f; 固定电话采用的是模拟信号还是数字信号&#xff1f; 这其实取决于接入方式&#xff1a; 铜线接入&#xff1a;传统方式&#xff0c;使用模拟电信号…

<项目代码>YOLO Visdrone航拍目标识别<目标检测>

项目代码下载链接 &#xff1c;项目代码&#xff1e;YOLO Visdrone航拍目标识别&#xff1c;目标检测&#xff1e;https://download.csdn.net/download/qq_53332949/90163918YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为一…

druid与pgsql结合踩坑记

最近项目里面突然出现一个怪问题&#xff0c;数据库是pgsql&#xff0c;jdbc连接池是alibaba开源的druid&#xff0c;idea里面直接启动没问题&#xff0c;打完包放在centos上和windows上cmd窗口都能直接用java -jar命令启动&#xff0c;但是放到国产信创系统上就是报错&#xf…

LabVIEW电机控制中的主动消抖

在LabVIEW电机控制系统中&#xff0c;抖动现象&#xff08;如控制信号波动或机械振动&#xff09;会影响系统的稳定性和精度。通过使用主动消抖算法&#xff0c;可以有效降低抖动&#xff0c;提高控制性能。本文将介绍几种主流的主动消抖算法&#xff0c;并结合具体应用案例进行…

Vue CLI 脚手架创建项目流程详解 (2)

更新 CLI 脚手架 确保你安装的是最新版本的 Vue CLI&#xff0c;以支持最新的特性及改进。你可以通过以下命令全局安装或更新 Vue CLI&#xff1a; npm install -g vue/cli创建 Vue 3.x 项目 启动创建向导 使用 vue create 命令来开始创建一个新的 Vue 项目&#xff1a; vue …

macos 隐藏、加密磁盘、文件

磁盘加密 打开磁盘工具 点击添加 设置加密参数 设置密码 查看文件 不用的时候右键卸载即可使用的时候装载磁盘&#xff0c;并输入密码即可 修改密码 解密 加密&#xff0c;输入密码即可 禁止开机自动挂载此加密磁盘 如果不禁止自动挂载磁盘&#xff0c;开机后会弹出输入…

Chapter 19 Layout and Packaging

Chapter 19 Layout and Packaging 这一章我们介绍版图和封装, 关注模拟和数字电路的要求. 首先讲模拟电路中layout设计考虑, 然后解决衬底coupling问题, 最后描述封装问题, 分析IC的外部电容和电感问题. 19.1 General Layout Considerations 19.1.1 Design Rules Minimum W…

c++ ------语句

一、简单语句 简单语句是C中最基本的语句单元&#xff0c;通常以分号&#xff08;;&#xff09;结尾&#xff0c;用于执行一个单一的操作。常见的简单语句类型有&#xff1a; 表达式语句&#xff1a;由一个表达式后面加上分号构成&#xff0c;用于计算表达式的值或者执行具有…

OpenResty、Lua介绍认识

文章目录 官网网址openrestry介绍OpenResty 的关键特性包括&#xff1a;应用场景&#xff1a;Lua 在 OpenResty 中的应用 安装openrestry简单实验下 官网网址 开源版在线文档和支持 商业版支持 什么是Lua 学习Lua语法 每篇一问&#xff1a;什么是编译型语言&#xff0c;什么是…

Flutter组件————Container

Container Container 是 Flutter 中最常用的布局组件之一 参数 参数名称类型描述alignmentAlignmentGeometry定义子组件在其内部的对齐方式&#xff0c;默认为 null&#xff0c;即不改变子组件的位置。paddingEdgeInsetsGeometry内边距&#xff0c;用于在子组件周围添加空间…

36. Three.js案例-创建带光照和阴影的球体与平面

36. Three.js案例-创建带光照和阴影的球体与平面 实现效果 知识点 Three.js基础 WebGLRenderer WebGLRenderer 是Three.js中最常用的渲染器&#xff0c;用于将场景渲染到网页上。 构造器 new THREE.WebGLRenderer(parameters)参数类型描述parametersobject可选参数&#…

vue2 - Day03 - (生命周期、组件、组件通信)

文章目录 一、生命周期1. 创建阶段2. 挂载阶段3. 更新阶段4. 销毁阶段5. 错误捕获总结 二、组件2.1 注册1. 全局注册 - 公共的组件。2. 局部注册总结 2.2 三大重要的组成部分1. 模板 (Template)主要功能&#xff1a;说明&#xff1a; 2. 脚本 (Script)主要功能&#xff1a;说明…

移动0 - 简单

************* C topic&#xff1a;283. 移动零 - 力扣&#xff08;LeetCode&#xff09; ************* Hello, hows your weekend. during my learning, topic about array perplex me. Just do it. Inspect the topic: It is a easy one but not easy for me now bec…

powershell美化

powershell美化 写在前面 除了安装命令&#xff0c;其他都是测试命令&#xff0c;后续再写进配置文件 安装主题控件 安装主题oh-my-posh&#xff0c;powershell中执行 winget install JanDeDobbeleer.OhMyPosh -s winget oh-my-posh init pwsh | Invoke-Expression # 查看…

3. Kafka入门—安装与基本命令

Kafka基础操作 一. 章节简介二. kafka简介三. Kafka安装1. 准备工作2. Zookeeper安装2.1 配置文件2.2 启动相关命令3. Kafka安装3.1 配置文件3.2 启动相关命令-------------------------------------------------------------------------------------------------------------…

Element@2.15.14-tree checkStrictly 状态实现父项联动子项,实现节点自定义编辑、新增、删除功能

背景&#xff1a;现在有一个新需求&#xff0c;需要借助树结构来实现词库的分类管理&#xff0c;树的节点是不同的分类&#xff0c;不同的分类可以有自己的词库&#xff0c;所以父子节点是互不影响的&#xff1b;同样为了选择的方便性&#xff0c;提出了新需求&#xff0c;选择…

基于Spring Boot的房屋租赁管理系统

一、系统背景与目的 随着城市化进程的加快和人口流动性的增强&#xff0c;租房市场需求急剧增长。传统的租房方式依赖于中介平台或线下交易&#xff0c;存在房源信息更新不及时、虚假信息泛滥、交易流程繁琐、沟通渠道不畅等问题。基于Spring Boot的房屋租赁管理系统旨在通过构…