我的树莓派上有 2 个 Java 程序 (.jar),它们应该在启动时执行。
我通过编写一个 sh 脚本来完成此操作,该脚本执行这两个程序(从控制台启动,两个程序都在工作)。这两个脚本都应该在树莓派启动时由 rc.local 执行。
我遇到的问题是,只有我的第一个程序正在启动,而第二个程序没有启动。我可以这么说,因为第一个程序开始记录日志,但第二个程序甚至没有创建日志文件。因此,我对 Linux 完全陌生,我不知道我是否有错误的方法或只是一些小错误。
jar 的路径:/home/pi/Programms/Projectfolder/jar
rc.local:
cd /init.d
sh StartPantaBot.sh
sh StartHandballTippspiel.sh
这些是执行位于 /etc/init.d 中的 2 个 sh 脚本的行
启动PantaBot.sh:
#! /bin/sh
# /etc/init.d/StartPantaBot.sh
### BEGIN INIT INFO
# Provides: StartPantaBot.sh
# Required-Start: $all
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Simple script to start the Pantabot at boot
# Description: A simple script
### END INIT INFO
chmod -R 777 /home/pi/Programms/PantaBot
java -jar /home/pi/Programms/PantaBot/PantaBot.jar >/var/log/logPantaBot.txt
另一张看起来很相似
答案1
修改运行命令看看是否有效,尝试使用此命令运行Java应用程序
nohup java -jar /home/pi/Programms/PantaBot/PantaBot.jar > /var/log/logPantaBot.txt 2>&1 &