概述
初步学习Springboot编写服务,尝试部署到Linux环境下,并进行开机自启动。
Linux系统:Centos7.6
Java包:xxx.jar
流程
- 将 xxx.jar 包(及外部配置文件)放入Linuxu系统中,假设放到/home/test/路径下;
- 修改文件权限:chmod 777 xxx.jar , 赋予jar包可执行权限;
- 编写启动脚本,假设命名为:xxx.sh:
export JAVA_HOME=/opt/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
cd /home/test/
nohup java -jar xxx.jar >> /home/test/xxx.log 2>&1 &
- 手动测试:sh xxx.sh ,然后 ps ax | grep java ,查看是否能正常启动;
- 若上述步骤正常,说明jar包和脚本都正确;接下来增加开机启动项:
- vim /etc/rc.local
- 在文件最后添加一行:sh /home/test/xxx.sh
- 重启机器;机器启动后, ps ax | grep java 查看程序是否随开机启动;
- 若程序启动,查看 /home/test/xxx.log 文件,日志是否正常;
至此,Linux 环境下设置 jar 包开机自启动流程结束。
备注
- 脚本文件需先export java环境,因为其他含Java环境变量的配置文件可能加载滞后,影响程序启动;
- 若有外部配置文件,需在脚本文件中先 cd 到程序所在目录,以便正常加载外部配置文件(也可以使用命令行参数指定外部配置文件,我没试);
- shell 重定向: > 代表清空原文件,重新写入; >> 代表追加到重定向文件;
- 2>&1:将标准错误stderr重定向到标准输出stdout;
- nohup xxx &:后台启动程序。
©著作权归作者所有:来自51CTO博客作者006玩命的原创作品,请联系作者获取转载授权,否则将追究法律责任
Linux 设置 jar 包开机自启动
https://blog.51cto.com/weiyuqingcheng/3728176