导读


由于项目打的jar包,但是使用Java -jar命令会使得项目在前台运行,并不会再后台。所以就需要编写一个脚本,然后以后只需要运行该脚本就可以了。

使用


方式一

编写启动脚本,上传 demo-2.0.jar包

启动脚本

编写./start.sh脚本

  1. nohup java -jar demo-2.0.jar --spring.profiles.active=prod &
  • nohup:让其后台运行
  • Java -jar :某个jar包
  • —spring.profiles.active:启动那个环境,常用的一般是dev/test/prod环境。

停止脚本

编写./stop.sh脚本

  1. PID=$(ps -ef | grep demo-2.0.jar | grep -v grep | awk '{ print $2 }')
  2. if [ -z "$PID" ]
  3. then
  4. echo Application is already stopped
  5. else
  6. echo kill $PID
  7. kill $PID
  8. fi

启动

  1. # 启动java
  2. ./start.sh
  3. # 停止java服务
  4. ./stop.sh

详细部署,可以参考这篇文章:eladmin开发文档

方式二

  1. nohup java -jar xxxx.jar >/dev/null 2>&1 &

为了不让一些执行信息输出到前台(控制台),我们还会加上上述的>/dev/null 2>&1命令来丢弃所有的输出:

方式三(推荐)

办公项目启动

  1. nohup java -jar demo-web.jar &
  • demo-web.jar:是打的jar包
  • &:表示后台运行

办公项目停止

  1. //关闭Java进程
  2. ps -aux | grep java
  3. kill -s 9 xxx

举例:

  1. //查询8080端口所在进程ID
  2. ps -aux | grep 80
  3. 或者
  4. ps -ef | grep java
  5. //杀死80端口
  6. kill -s 9 80
  • ps -aux | grep “端口”:查找某个端口的进程ID。
  • ps -ef| grep “端口”:查找某个端口的进程ID。
  • kill -s 9 “进程ID”:杀死进程ID。

END


搞定~