启动后在Raspberry Pi(Raspbian)上自动运行jar,rc.local不工作?

启动后在Raspberry Pi(Raspbian)上自动运行jar,rc.local不工作?,jar,raspberry-pi,autorun,raspbian,Jar,Raspberry Pi,Autorun,Raspbian,我想在Raspberry Pi启动后自动运行.jar文件 通常我使用以下命令执行to.jar文件(非常有用): (我不能简单地使用java-jar TestSensor.jar,因为需要附加phidget21.jar以使TestSensor.jar正常工作) 现在,我想在我的raspberry pi启动时执行上面的命令 正如在许多地方所建议的那样,我试图用rc.local文件来解决这个问题 我添加了以下两行: cd /home/pi sudo java -classpath .:phidget2

我想在Raspberry Pi启动后自动运行.jar文件

通常我使用以下命令执行to.jar文件(非常有用):

(我不能简单地使用java-jar TestSensor.jar,因为需要附加phidget21.jar以使TestSensor.jar正常工作)

现在,我想在我的raspberry pi启动时执行上面的命令

正如在许多地方所建议的那样,我试图用rc.local文件来解决这个问题

我添加了以下两行:

cd /home/pi
sudo java -classpath .:phidget21.jar -jar TestSensor.jar
不幸的是,这不起作用

甚至

启动时不启动TestSensor.jar

我做错了什么?知道怎么修吗


谢谢

您可以通过
crontab
实现这一点。作为
root
使用例如
crontab-e
(编辑
crontab
文件的推荐方式),您可以添加行

@reboot /usr/bin/java -classpath /home/pi/:/home/pi/lib/phidget21.jar -jar /home/pi/TestSensor.jar
如前所述,您可能必须向
java
、类路径和
TestSensor.jar
中的元素添加完整路径。您应该将“我的”路径替换为
java
和jar的实际位置


干杯,

您可以通过
crontab
实现这一点。作为
root
使用例如
crontab-e
(编辑
crontab
文件的推荐方式),您可以添加行

@reboot /usr/bin/java -classpath /home/pi/:/home/pi/lib/phidget21.jar -jar /home/pi/TestSensor.jar
如前所述,您可能必须向
java
、类路径和
TestSensor.jar
中的元素添加完整路径。您应该将“我的”路径替换为
java
和jar的实际位置


干杯,

非常感谢您的回答:D不幸的是,在crontab文件末尾添加@reboot-classpath.:phidget21.jar-jar TestSensor.jar不起作用。我是linux新手,我不太清楚如果phidget21.jar和TestSensor.jar都位于/home/pi/命令应该是什么样子,那么“您可能必须添加java的完整路径、类路径和TestSensor.jar中的元素”是什么意思?抱歉,我之前错过了实际的
java
可执行文件。我还添加了(示例)路径和更多的解释。通常,您应该能够在
@reboot
之后从普通(根)命令行运行所有操作。希望对你有所帮助。非常感谢你的帮助,但似乎还是有问题。当我在终端中键入:sudo/usr/bin/java-classpath/home/pi/:/home/pi/lib/phidget21.jar-jar/home/pi/TestSensor.jar时,.jar文件得到执行,工作正常。但是如果我把这一行放到crontab文件中,它就不会得到execute。注意:jar文件还会打开一个表单(接口)。我不确定这是否与此有关??您是在Raspbian上运行GNOME/KDE还是指
tty
?在任何情况下,
cron
都不会有X
显示
或与登录shell相同的
tty
,因此它不会工作。您必须使用GNOME/KDE中的工具来自动启动或在
~pi/.bash\u profile
中启动它……我不知道您的意思是什么?我在我的Raspberry Pi上运行Raspbian(优化的Debian),如果在Raspbian启动时在终端中使用上述命令,一切都会正常工作。然后,jar文件中的窗口在桌面上打开,我看到了应该看到的内容。但是如果我只启动树莓皮,窗户就不会打开。如果我误解了你的问题,我很抱歉,但我对这一切都是新手。非常感谢你的回答:D不幸的是,只是在crontab文件末尾添加@reboot-classpath.:phidget21.jar-jar TestSensor.jar不起作用。我是linux新手,我不太清楚如果phidget21.jar和TestSensor.jar都位于/home/pi/命令应该是什么样子,那么“您可能必须添加java的完整路径、类路径和TestSensor.jar中的元素”是什么意思?抱歉,我之前错过了实际的
java
可执行文件。我还添加了(示例)路径和更多的解释。通常,您应该能够在
@reboot
之后从普通(根)命令行运行所有操作。希望对你有所帮助。非常感谢你的帮助,但似乎还是有问题。当我在终端中键入:sudo/usr/bin/java-classpath/home/pi/:/home/pi/lib/phidget21.jar-jar/home/pi/TestSensor.jar时,.jar文件得到执行,工作正常。但是如果我把这一行放到crontab文件中,它就不会得到execute。注意:jar文件还会打开一个表单(接口)。我不确定这是否与此有关??您是在Raspbian上运行GNOME/KDE还是指
tty
?在任何情况下,
cron
都不会有X
显示
或与登录shell相同的
tty
,因此它不会工作。您必须使用GNOME/KDE中的工具来自动启动或在
~pi/.bash\u profile
中启动它……我不知道您的意思是什么?我在我的Raspberry Pi上运行Raspbian(优化的Debian),如果在Raspbian启动时在终端中使用上述命令,一切都会正常工作。然后,jar文件中的窗口在桌面上打开,我看到了应该看到的内容。但是如果我只启动树莓皮,窗户就不会打开。如果我误解了你的问题,我很抱歉,但我对这一切都不熟悉。
@reboot /usr/bin/java -classpath /home/pi/:/home/pi/lib/phidget21.jar -jar /home/pi/TestSensor.jar