第一步:在/etc/init.d/目录下创建shell启动脚本autojar.sh

cd /etc/init.d/
touch autojar.sh
vi autojar.sh

autojar.sh的内容如下:

#!/bin/sh

### BEGIN INIT INFO
# Provides:          raspi.suidian.net.cn
# Required-Start:    $all
# Required-Stop:     
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: autostartup of springboot for RaspberryPi
### END INIT INFO

#程序名
RUN_NAME="SpringBoot.jar"

#jar包位置
JAVA_OPTS=/home/pi/Desktop/raspi-0.0.1-SNAPSHOT.jar
#后台运行日志位置
LOG_OPTS=/home/pi/Desktop/raspi-nohup.out

#开始方法
start() {
	nohup java -jar $JAVA_OPTS >$LOG_OPTS 2>&1 &
	echo "$RUN_NAME started success."
}
 
#结束方法
stop() {
	echo "stopping $RUN_NAME ..."
	kill -9 `ps -ef|grep $JAVA_OPTS|grep -v grep|grep -v stop|awk '{print $2}'`
}

case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	restart)
		stop
		start
		;;
	*)
	echo "Userage: $0 {start|stop|restart}"
	exit 1
esac

第二步:给自动启动脚本及springboot程序添加执行权限

 chmod a+x /etc/init.d/autojar.sh
 chmod a+x /home/pi/Desktop/SpringBoot.jar

第三部:添加到系统服务,并设置开机启动:

update-rc.d autojar.sh defaults 90

其他

如果启动日志中出现下图所示情况:

可能由于执行脚本时写在/etc/profile中的环境变量还没有生效。此时在脚本中指定vava执行器的完整bin路径即可,如下图所示: