jar包都需要一个个输入指令,手动开启,非常繁琐。参考大佬的文档后,整理以下步骤:
1.需要开机自启动的jar包列表如下:
thinvent-auth.jar
thinvent-gateway.jar
thinvent-iot-boot.jar
thinvent-modules-system.jar
thinvent-modules-file.jar
2.创建自启脚本jar_auto.sh
在/etc/rc.d/init.d目录下创建jar_auto.sh文件
vim /etc/rc.d/init.d/jar_auto.sh
脚本内容如下:
自启动脚本内容:
#!/bin/bash
#配置jdk的路径
export JAVA_HOME=/usr/local/java/jdk1.8.0_161 #此处为我的java环境路径,需要改为自己的JDK路径
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#有时需要把jar包延时启动(比如博主不设置延时启动jar,nacos会提示拒绝连接)
#延时30S运行jar包,需要延时启动则放开sleep注释行 (sleep+数字,表示延迟多少秒启动)
#sleep 30 #有点奇怪,设置了延时有一个jar包起不来,此处延时仅供参考
#配置jar包启动的路径 日志生成路径 nohup表示静默启动
nohup java -jar /usr/local/tomcat/jar/thinvent-auth.jar > /usr/local/tomcat/jar/thinvent-auth.log&
nohup java -jar /usr/local/tomcat/jar/thinvent-gateway.jar >/usr/local/tomcat/jar/thinvent-gateway.log&
nohup java -jar /usr/local/tomcat/jar/thinvent-iot-boot.jar>/usr/local/tomcat/jar/thinvent-iot-boot.log&
nohup java -jar /usr/local/tomcat/jar/thinvent-modules-system.jar > thinvent-modules-system.log&
nohup java -jar /usr/local/tomcat/jar/thinvent-modules-file.jar > /usr/local/tomcat/jar/thinvent-modules-file.log&
注意:如果jar包配置文件没有配置运行的端口,需要指定jar运行的端口,添加 --server.port=jar运行端口:
nohup java -jar /usr/local/tomcat/jar/thinvent-auth.jar --server.port=18070 > /usr/local/tomcat/jar/thinvent-auth.log&
因博主的jar包内配置文件已指定jar程序运行的端口,所以在脚本中不需要再指定运行的端口!!!
3.为jar_auto自启动脚本赋予执行权限
chmod +x 命令表示将该文件设置为可执行的文件
我们创建的jar自启动脚本jar_auto.sh,在/etc/rc.d/init.d目录下,所有要在该目录下执行赋予可执行的权限指令。
chmod +x /etc/rc.d/init.d/jar_auto.sh #赋予执行权限
4.为jar脚本赋予开机自启动权限
编辑/etc/rc.d目录下的rc.local文件
vim /etc/rc.d/rc.local
添加jar自启动脚本所在的目录,添加的内容如下:
/etc/rc.d/init.d/jar_auto.sh
5.赋予rc.local文件执行权限
将jar自启动目录添加到rc.local文件后,需要为文件重新赋予执行权限,执行以下命令:
chmod +x /etc/rc.d/rc.local
重启测试,查看jar包是否已启动:
reboot
使用ps命令查看jar启动状态:
#查看包含.jar后缀的文件启动状态
ps -ef | grep .jar
可以看到jar包启动成功