服务器中启动和停止项目

服务器中启动和停止项目

  • 一、前言
  • 二、使用命令启动和关闭项目
    • 1、启动项目
    • 2、停止项目
  • 三、使用可执行脚本启动和关闭项目
    • 1、启动项目
    • 2、停止项目

一、前言

在服务器上部署项目,一般就是将项目挂在后台,如果是微服务首选docker-compose,可以看看这篇博客,但如果是单体服务,感觉用可执行脚本会方便一点。
这里讲的是单体服务的部署。

二、使用命令启动和关闭项目

我的项目打包后名称为:jeecg-boot-module-system-2.4.2.jar ,后面以这个为例。

1、启动项目

在项目所在文件使用如下命令:

nohup java -jar <项目名称> &

这是我的:

nohup java -jar jeecg-boot-module-system-2.4.2.jar &

在这里插入图片描述

在项目运行期间,会把日志输出到 nohup.out 文件中,重启项目记得删除!

2、停止项目

停止项目就是杀掉项目的进程了,先查看进程ID,命令如下:

ps -ef | grep <项目名称>

这是我的:

ps -ef | grep jeecg-boot-module-system-2.4.2.jar

一般在第一行,后面也有启动项目的命令,认准那个就不会错了。其中第二列就是我们需要的进程ID。

在这里插入图片描述

然后使用杀掉进程的命令:

kill -9 <PID>

PID就是上面的进程ID,没有报错就代表成功了。

这是我的:

kill -9 3357306

在这里插入图片描述

因为已经杀过项目了,所以提示进程不存在。

三、使用可执行脚本启动和关闭项目

感觉上面的步骤在更新项目的时候略显繁琐,尤其是关闭项目的命令,就想着能不能使用一个命令完成,于是就将命令放到一个脚本文件中。

1、启动项目

创建一个名为 start.sh 的文件,内容如下:

nohup java -jar jeecg-boot-module-system-2.4.2.jar &
echo "Current PID:$!"
echo "Start Success!"

再通过命令启动,命令如下:

sh start.sh start

在这里插入图片描述

可以看到项目已经启动,会把日志输出到名为 nohup.out 的文件中。

2、停止项目

创建一个名为 stop.sh 的文件,内容如下:

# ps -ef | grep -v grep | grep jeecg-boot-module-system-2.4.2.jar | awk '{print $2}'
# 表示只输出“jeecg-boot-module-system-2.4.2.jar”的进程ID,就是PID,“awk '{print $2}'”表示只输出第二列,第二列就是PID所在列
PID=$(ps -ef | grep -v grep | grep jeecg-boot-module-system-2.4.2.jar | awk '{print $2}')
echo "Current PID:$PID"
kill -9 $PID
echo "Stop Success!"

再通过命令停止,命令如下:

sh stop.sh start

在这里插入图片描述

可以看到项目已经停止。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【LangChain实战】LangChain快速入门

1、什么是大语言模型 大语言模型是一种人工智能模型&#xff0c;通常使用深度学习技术&#xff0c;比如神经网络&#xff0c;来理解和生成人类语言。这些模型的“大”在于它们的参数数量非常多&#xff0c;可以达到数十亿甚至更多&#xff0c;这使得它们能够理解和生成高度复杂…

Web框架与Django简介

Web框架与Django简介 一、Web应用的组成 我们为了开发一款Web软件首先要了解什么才是Web应用软件呢&#xff1f; 对于传统的应用软件来说&#xff0c;基本都是部署单机使用&#xff0c;而Web应用软件就不一样&#xff0c;Web应用软件是基于B/S架构的&#xff0c;B和S都在不同…

QT6 Creator编译KDDockWidgets并部署到QT

为什么使用KDDockWidgets 为什么使用KDDockWidgets呢&#xff1f; 首先它是一个优秀的开源dock库&#xff0c;弥补QDockWidget的不足&#xff0c;详情见官网。 其次它支持QML&#xff0c;这是我最终选择这个dock库的主要原因&#xff0c;因为最近在考虑将前端界面用QML做&…

机器学习之自监督学习(五)MAE翻译与总结(一)

Masked Autoencoders Are Scalable Vision Learners Abstract 本文表明&#xff0c;掩蔽自动编码器&#xff08;MAE&#xff09;是一种可扩展的计算机视觉自监督学习器。我们的MAE方法很简单&#xff1a;我们屏蔽输入图像的随机patch&#xff0c;并重建缺失的像素。它基于两个…

可自行DIY单TYPE-C接口设备实现DRP+OTG功能芯片

随着USB-C接口的普及&#xff0c;欧盟的法律法规强制越来越多的设备开始采用这种接口。由于 USB-C接口的高效性和便携性&#xff0c;使各种设备之间的连接和数据传输变得非常方便快捷&#xff0c;它们不仅提供了强大的功能&#xff0c;还为我们的日常生活和工作带来了极大的便利…

MySQL- CRUD

一、INSERT 添加 公式 INSERT INTO table_name [(column [, column...])] VALUES (value [, value...]); 示例&#xff1a; CREATE TABLE goods (id INT ,good_name VARCHAR(10),price DOUBLE ); #添加数据 INSERT INTO goods (id,good_name,price ) VALUES (20,华为手机,…

商城免费搭建之java商城 鸿鹄云商 B2B2C产品概述

【B2B2C平台】&#xff0c;以传统电商行业为基石&#xff0c;鸿鹄云商支持“商家入驻平台自营”多运营模式&#xff0c;积极打造“全新市场&#xff0c;全新 模式”企业级B2B2C电商平台&#xff0c;致力干助力各行/互联网创业腾飞并获取更多的收益。从消费者出发&#xff0c;助…

Moonbeam生态项目分析 — — 去中心化交易所Beamswap

流动性激励计划Moonbeam Ignite是帮助用户轻松愉快体验Moonbeam生态的趣味活动。在Moonbeam跨链连接的推动下&#xff0c;DeFi的各种可能性在这里爆发。DeFi或许不热门&#xff0c;但总有机会捡漏&#xff0c;了解Monbeam生态项目&#xff0c;我们邀请Moonbeam大使分享他们的研…

重庆数字孪生技术推进制造业升级,工业物联网可视化应用加速

重庆数字孪生、5G、人工智能、物联网、大数据等新一代信息技术的出现及终端计算设备的发展&#xff0c;带来了研发模式、生产模式、消费模式、体制机制的系统性变革&#xff0c;企业应该建设适应工业4.0时代发展要求的新型生产体系。巨蟹数科数字孪生智能工厂通过部署多样化用例…

基于SSM的高校学生实习管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

SEO工具-免费功能最全的5款SEO工具

随着互联网的蓬勃发展&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;已经成为许多企业和个人网站必备的关键技能。然而&#xff0c;对于初学者或者运营小型网站的人来说&#xff0c;使用专业的SEO工具可能涉及较高的成本。在这篇文章中&#xff0c;我们将向您推荐五款高…

Angular的Ng-Zorro组件库通知提醒框知识点

目录 系列文章目录 一、在angular中引入通知提醒框服务 二、创建通知提醒框 提示&#xff1a;在实际操作中根据id移除通知提醒框的方法尚未熟悉&#xff0c;根据此文档进行巩固 一、在angular中引入通知提醒框服务 constructor(private notifition: NzNotificationService) {}…

《算法通关村——幂运算问题解析》

《算法通关村——幂运算问题解析》 2 的幂 给你一个整数 n&#xff0c;请你判断该整数是否是 2 的幂次方。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 如果存在一个整数 x 使得 n 2x &#xff0c;则认为 n 是 2 的幂次方。 示例 1&#xff1…

postman接口测试教程与实例分享

postman 的界面图 各个功能区的使用如下&#xff1a; 快捷区&#xff1a; 快捷区提供常用的操作入口&#xff0c;包括运行收藏夹的一组测试数据&#xff0c;导入别人共享的收藏夹测试数据&#xff08;Import from file, Import from folder, Import from link等&#xff09;&…

考虑区域多能源系统集群协同优化的联合需求侧响应模型程序代码!

本程序参考中国电机工程学报论文《考虑区域多能源系统集群协同优化的联合需求侧响应模型》&#xff0c;文章使用关系矩阵来表示电、热、气的耦合关系&#xff0c;使用NSGA2方法对多目标优化方法进行求解&#xff0c;文章中考虑环境因素是目前研究的热点。程序中算例丰富&#x…

SAP FB01 更新采购凭证历史EKBE

参考链接BAPI_ACC_DOCUMENT_POST – Vendor Down payment: Update Purchase order info and PO history 不需要链接里的替代过程&#xff0c;可以直接写在函数BAPI_ACC_DOCUMENT_POST的增强结构EXTENSION2里 需要复制BTE增强1050 在其中调用函数ME_CREATE_HISTORY_FINANCE 即…

将图像的rgb数据转成DICOM医学图像格式

dcmtk官方文档&#xff1a;https://support.dcmtk.org/docs/ dcmtk最新源码下载&#xff1a;https://www.dcmtk.org/en/dcmtk/dcmtk-software-development/ dcmtk旧版本源码下载&#xff1a;https://dicom.offis.de/download/dcmtk/ 用DCMTK库实现将图像转成dcm格式 dcmtk库的…

甘草书店记: 2023年10月11日 星期三 晴 「做有光的人,照亮他人,也引人同行」

发了两篇《甘草书店记》&#xff0c;书店计划公之于众&#xff0c;收获了不少人的赞扬和鼓励&#xff0c;来自生活中的友人&#xff0c;来自麦田的客户和朋友&#xff0c;来自图书界的同行前辈&#xff0c;也来自商界的同仁。其中&#xff0c;最特别留言来自甘草书店投资方的张…

解析javascript数组方法 find 和 filter 有何区别

首先用一个案例可以很直观的看到 find 和 filter 的区别&#xff1b; 相同点&#xff1a; 两者分别可以接受三个参数&#xff1a;当前元素、当前索引、整个数组&#xff1b;两者都可以用来查找数组中符合条件的元素&#xff1b; 不同点&#xff1a; find&#xff1a; 用于查…

连接备份1128

深度学习—分类识别篇&#xff1a;http://tr.daheng-imaging.com/watch/1050636http://tr.daheng-imaging.com/watch/1050636 深度学习—目标检测篇&#xff1a;http://tr.daheng-imaging.com/watch/1101141http://tr.daheng-imaging.com/watch/1101141 深度学习—缺陷分割篇&a…
最新文章