使用nohup命令让程序持续运行在服务器后台(Springboot项目部署服务器方式方法)(关掉终端继续让程序运行的方法)

适合以下两种情景:

情景一:我们写好一个简单的java程序(非Web项目),想在服务器后端运行,即使服务器断开连接,也在运行。

情景二:我们需要把SpringBoot项目(Jar包形式)部署到服务器上。

首先,不论哪种情景,我们都需要在本地,把一个成功运行的代码/项目打成Jar包。(我习惯本地 Java -jar 成功后再发布)

第一步:把Jar包放到你满意的路径下(我这里放到/home下了)

第二步:我们需要创建一个sh脚本文件,并赋予它可执行的权限(命令行分别执行下面两个命令)(代码前的 # 不需要输入!代表命令行输入的东西)

#touch /home/starttest.sh
#chmod +x /home/starttest.sh

其中

touch :

touch [文件或目录…]

chmod:

  chmod +x 是给这个文件赋予执行的权限

第三步:编辑刚刚创建的.sh脚本

#vi /home/starttest.sh 

 输入以下内容(开始编辑 按 “i” ,编辑完 按 “Esc” 然后 输入 ":wq"

#!/bin/sh
nohup java -jar /home/csdn.jar &

nohup : 不挂断的运行,注意并没有后台运行的功能

& : 指在后台运行

第四步:运行脚本

#sh starttest.sh

 注意!Ctrl+C退出

我们用 ps -ef | grep java 看下,代码是不是已经运行在后台了。OK~

至此,你的java程序/Springboot项目,即使在终端断开远程连接的情况下也可以运行在你服务器的后台了

BUT!在第三步的时候,目录下生成的nohup.out文件会随着项目运行,不断增大对内存的占用!

番外篇:第五步:在不停止运行的情况下,定期删除nohup.out中的内容

发布了28 篇原创文章 · 获赞 38 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/Tianc666/article/details/104735568