Linux 系统运行项目的几种方式

简介

前几天在自己电脑上搭建了一个个人博客系统->Halo,觉得还挺好玩的,但是一关掉idea就没法访问博客了,所以想着把项目部署到阿里云服务器上,这样就能继续愉快的玩耍了。我买的云服务器是Linux系统的,在系统上部署完项目之后遂记录下了这篇博客。

准备工作

  • 一般web项目在开发完成之后都是打成一个jar包,然后推送到Linux系统上运行的。

不管是你的项目是由Maven还是Gradle来管理依赖的,在idea上都能很方便的快速将项目打成jar包,直接点击按钮就可以,命令都不用敲。

生成jar包生成的jar包

  • jar包发送到服务器上

运行项目(先进入jar包所在目录)

注意:Halo.jar是我的项目jar包的名字

  • 方式一:java -jar Halo.jar

运行后,当前界面会像控制台一样输出很多相关信息,此时当前窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序就会退出。

  • 方式二:java -jar Halo.jar &

&代表在后台运行,当前窗口不被锁定,但是当窗口关闭时,程序会中止运行。

  • 方式三:nohup java -jar Halo.jar &

nohup意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行。当用nohup命令执行任务时,默认情况下该任务的所有输出信息被重定向到nohup.out文件中(文件在jar包的同级目录下),除非另外指定了输出文件。

  • 方式四:nohup java -jar Halo.jar >temp.txt &

这个命令整体表示在后台运行程序,且当账户退出或终端关闭时,程序仍然运行。其中:>temp.txt表示将运行项目所产生的内容输出到temp.txt这个文件里。
有些命令可以查看输出到文件里的内容,比如日志、报错信息等等,可以参考Linux文件与目录管理这篇博文。

其他命令

  • netstat -nlp |grep :8090

查看占用某端口的进程的pid(进程号),其中:8090表示端口号,比如Halo这个项目占用的端口号是8090,我们就可以查看到这个项目的进程号(PID)

根据端口号查看进程号

  • ps -ef|grep Halo.jar

如果忘了进程号,可以通过当前运行的程序jar包的名字来查看pid进程号(PID),其中:Halo.jar为程序jar包的名字。

根据jar包名查看端口号

  • kill -9 24204

关闭某个进程,其中:24204为进程号(PID)。

参考文档

https://www.jb51.net/article/167330.htm

发布了35 篇原创文章 · 获赞 52 · 访问量 1311

猜你喜欢

转载自blog.csdn.net/weixin_40242806/article/details/104032768