我编写了一个运行在“Raspberry Pi”(基于ARM的小型Linux计算机)上的JavaFX应用程序。 “Pi”上的操作系统是“Raspbian”(Raspberry Pi的Debian Linux)。我在Raspbian上安装了JDK8来运行没有X-Server的图形JavaFX应用程序。这一切都很好:)我可以通过输入以下命令来启动应用程序:
/opt/jdk1.8.0/bin/java -cp /home/pi/sqljdbc4.jar:/home/pi/Leitwarte.jar leitwarte.Leitwarte
当应用程序启动时,它可以完全控制鼠标和键盘,因此无法重新进入控制台,但是这样做是因为它只是一个监控系统,我可以通过ssh关闭mashine。
我现在想在启动后直接启动应用程序,这样就无需输入用户名,密码并启动应用程序。
mashine除了运行应用程序之外什么都不做(当然有运行ftp,ssh deamon来更新应用程序)
请一步一步告诉我,因为我很长时间不使用Linux。
非常感谢。
答案 0 :(得分:2)
CMD
cd /etc/init.d
sudo nano leitwarte
输入以下内容
#! /bin/sh
# /etc/init.d/leitwarte
touch /var/lock/leitwarte
case "$1" in
start)
echo "Starting Leitwarte ... "
/opt/jdk1.8.0/bin/java -cp /home/pi/sqljdbc4.jar:/home/pi/Leitwarte.jar leitwarte.Leitwarte > /dev/null &
;;
stop)
echo "Killing Leitwarte ..."
killall java
;;
*)
echo "Usage: /etc/init.d/leitwarte {start|stop}"
exit 1
;;
esac
exit 0
然后
chmod 755 leitwarte
update-rc.d leitwarte defaults
DONE
答案 1 :(得分:0)
我解决了这个问题
当应用程序启动时,它可以完全控制鼠标a 键盘,所以没有办法回到控制台
添加引号("")并为-Djavafx.platform=gtk
提供DEFAULT_JVM_OPTS
。
例如,在我的情况下,我替换了这段代码:
DEFAULT_JVM_OPTS=-XX:+UseG1GC -Dmode=prod_w_updates
到此:
DEFAULT_JVM_OPTS="-XX:+UseG1GC -Dmode=prod_w_updates -Djavafx.platform=gtk"
希望,这会有所帮助