##springboot在linux中运行
###单次运行
在idea中找到maven可视化界面,双击package打包jar文件
打开terminal,左上角shell->new remote connection->选sftp->user填root,下面填sftp root@ip地址(本人sftp root@47.99.205.75)->上传文件格式put 本地地址 远程文件要放的地址(usr/lib)
在linux中提前已经用Navicat创建数据库,只需
1
java -jar /usr/lib/项目jar名.jar --spring.profiles.active=prod
即可在本地用ip地址:端口号访问
当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出
以上方法在关闭进程后项目也停了
###持续运行
1 | nohup java -jar /usr/lib/项目jar名.jar & |
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。
1 | nohup java -jar XXX.jar >temp.txt & |
解释下 >temp.txt
command >out.file
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
可通过jobs命令查看后台运行任务
1 | jobs |
那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。
1 | fg 23 |
- 通过lsof查询进程
1 | lsof -i:端口号 |
如果提示command not found,先下载lsof
1 | yum install lsof |
a:显示所有程序
u:以用户为主的格式来显示
x:显示所有程序,不以终端机来区分
注:
用ps -def | grep查找进程很方便,最后一行总是会grep自己
用grep -v参数可以将grep命令排除掉
1 | ps -aux|grep chat.js |
结束nohup进程,
1 | kill -9 进程号(注意是进程号不是端口号) |