一、前言🔥
👨🎓作者:bug菌
✏️博客:CSDN、掘金、infoQ、51CTO等
🎉简介:CSDN博客专家,C站历届博客之星Top50,掘金/InfoQ/51CTO等社区优质创作者,全网合计8w粉+,对一切技术感兴趣,重心偏Java方向;硬核公众号「 猿圈奇妙屋」,欢迎小伙伴们的加入,一起秃头,一起变强。
..
✍️温馨提醒:本文字数:1999字, 阅读完需:约 5 分钟
嗨,家人们,我是bug菌呀,我又来啦。今天我们来聊点什么咧,OK,接着为大家更《springboot零基础入门教学》系列文章吧。希望能帮助更多的初学者们快速入门!
小伙伴们在批阅文章的过程中如果觉得文章对您有一丝丝帮助,还请别吝啬您手里的赞呀,大胆的把文章点亮👍吧,您的点赞三连(收藏⭐+关注👨🎓+留言📃)就是对bug菌我创作道路上最好的鼓励与支持😘。时光不弃🏃🏻♀️,创作不停💕,加油☘️
二、环境说明🔥
环境说明:Windows10 + Idea2021.3.2 + Jdk1.8 + SpringBoot 2.3.1.RELEASE
三、教程正文🔥
说明:如下是直接从第3步开始讲起,至于第1步跟第2步在我上一篇文章中,如果有直接能略过的那就直接跟着第3步开始操作吧,如果不会第1步跟第2步的同学那就看我上一期的内容,再折返回来接着看就行了。
至于为什么要拆分成两篇文章?理由很简单,你们懂的,我就不解释了哈。
《springboot之jar包Linux后台启动部署及滚动日志查看且日志输出至文件保存(上篇)》
1️⃣通过idea打jar包💭
... ...
2️⃣jar包上传服务器💭
... ...
3️⃣检查java环境💭
... ...
4️⃣jar后台启动🔅
我们都知道,jar运行命令是 java -jar xxx.jar 。对吧,但是有一点,我们要实现项目后台启动,如果你就常规启动,那么你的运行窗口不能关闭,只要你xshell断开连接或者关闭,项目就终止,所以接下来我教你如何后台启动jar包。
这个时候,我们就要用到nohup命令了。nohup 全称:no hang up(不挂起),也就是说,当前交互命令行退出的时候,程序还在运行。
怎么关闭此进程呢?你只需要执行如下命令查找到该服务进程id,然后kill掉即可:
ps -ef | grep jar名
kill -9 进程id
实际演示如下:
所以实际执行组合命令如下:
nohup java -jar xxx.jar &
5️⃣控制台日志输出保存🔅
如果你要实时记录控制台输出日志,那你就可以这么玩儿,在启动命令后加上:
> log.file 2>&1 &
拓展:
2>&1 :表示 将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 log.file 文件中。
- 0 :stdin (standard input,标准输入)
- 1 :stdout (standard output,标准输出)
- 2 :stderr (standard error,标准错误输出)
所以启动命令可以是这样:
nohup java -jar xxx.jar > log.file 2>&1 &
6️⃣外部配置文件启动🔅
我们都知道,springboot jar可以指定外部配置文件启动,对吧,那么这究竟得有啥好处呢?那就是当你修改配置文件,你不不需要再重新打jar包,而只需要修改yaml然后重启项目即可。
所以,我们都会将config这个文件夹单独放与xxx.jar包同级。比如:
然后再通过启动命令指定你要运行的配置环境即可。那具体怎么指定呢?其实也是有语法的。在你启动java -jar xxx.jar 后面直接这样指定,然后test是你application-test.yaml的配置指向,这个我就不多解释。
--spring.profiles.active = test
总结以上,所以最终jar启动命令如下:
nohup java -jar review-server.jar --spring.profiles.active = test > log.file 2>&1 &
如下是实际启动命名截图:
可以看到,启动了并返回了该服务的进程id。我们也可以来验证一下,是不是该项目服务的进程id。
7️⃣查看实时滚动日志🔅
想要查看项目滚动日志,那我们就用到了 tail 命令了。
命令格式:
tail [参数] [文件]
默认将每个 FILE 的最后 10 行打印到标准输出。
实际使用截图:
tail -f nohup.out
新的日志行添加至 nohup.out 文件时,tail 命令会继续显示这些行。显示一直继续,按ctrl+c可以退出实时查看,再输入其他指令。
你也就可以看到会自动生成这两文件:
log.file是我用来记录项目运行日志的。而nohup.out则包含了项目控制台发到终端显示器上的所有输出,输出会追加到现有的nohup.out文件中。
8️⃣总结🔅
对于有的小伙伴不想看我仔细分析,那么你直接看这里,我把本文章最核心的告诉你,那就是jar的完整启动命令。仅供参考:
nohup java -jar review-server.jar --spring.profiles.active = test > log.file 2>&1 &
其中log.file是用于记录项目控制台日志打印,test是你项目启动的环境配置。
... ...
ok,以上这样就好啦,如果还想学习更多,你可以看看我的往期热文推荐哦,每天积累一个奇淫小知识,日积月累下去,你一定能成为令人敬仰的大佬的。好啦,咱们下期见~
四、往期推荐🔥
- springboot系列(一):如何创建springboot项目及启动
- springboot系列(二):yaml、properties两配置文件介绍及使用
- springboot系列(三):多环境切换,实例演示
- springboot系列(四):stater入门
- springboot系列(五):史上最最最全springboot常用注解
- springboot系列(六):mysql配置及数据库查询
- springboot系列(七):如何通过mybatis-plus实现接口增删改查
- springboot系列(八):mybatis-plus之条件构造器使用手册
- springboot系列(九):mybatis-plus之如何自定义sql
- springboot系列(十):mybatis之xml映射文件>、<=等特殊符号写法
- springboot系列(十一):实现多数据源配置,开箱即用
- springboot系列(十二):如何实现邮件发送提醒,你一定得会(准备篇)
- springboot系列(十三):如何实现发送普通邮件?你一定得会
- springboot系列(十四):如何实现发送图片、doc文档等附件邮件?你一定得会
- springboot系列(十五):如何实现静态邮件模板发送?你一定得会
- springboot系列(十六):如何实现发送邮件提醒,附完整源码
- springboot系列(十七):集成在线接口文档Swagger2
- springboot系列(十八):如何Windows安装redis?你玩过么
- springboot系列(十九):如何集成redis?不会我教你
- springboot系列(二十):如何通过redis实现手机号验证码功能
- ... ...
文末🔥
如果还想要学习更多,小伙伴们可关注bug菌专门为大家创建的专栏《springboot零基础入门教学》,从无到有,从零到一!希望能帮助到更多小伙伴们。
我是bug菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting!
感谢认真读完我博客的铁子萌,在这里呢送给大家一句话,不管你是在职还是在读,绝对终身受用。
时刻警醒自己:
抱怨没有用,一切靠自己;
想要过更好的生活,那就要逼着自己变的更强,生活加油!!!