我想运行我的 Java 程序,但即使我关闭 Putty,它也需要继续运行。该程序正在我的 Raspberry pi 上运行,并且启动完全正常,但是一旦我关闭控制台,该程序就会停止。
目前我用 sh 脚本和其中的这一行进行了尝试:
nohup java -jar /home/pi/Programms/PantaBot/PantaBot.jar > /var/log/logPantaBot.txt 2>&1 &
答案1
您忘记说明您在这里运行的操作系统/发行版。假设它是使用 systemd 的东西,然后在 /etc/systemd/system 中添加一个新文件(例如 pantabot.service),其中包含类似...
[Unit]
Description=pantabot
[Service]
ExecStart=/usr/bin/java \
-jar /home/pi/Programms/PantaBot/PantaBot.jar
SuccessExitStatus=143
自动管理日志文件通常是一个很好的做法 - 将以下内容添加到 [Service] 部分会将日志添加到您现有的(轮换的)日志文件中......
StandardOutput=syslog
StandardError=syslog
但您也可以将其发送到特定文件。
StandardOutput=append:var/log/logPantaBot.txt
StandardError=append:var/log/logPantaBot.txt
完成后,运行systemctl daemon-reload
然后使用 systemctl start pantabot / systemctl stop pantabot 来控制它。
最后,如果您附加
[Install]
WantedBy=multi-user.target
并运行systemctl enable pantabot
它会在您启动主机时自动启动。