
Ich versuche, eine Java-SWT-Anwendung zu starten, nachdem das System gebootet wurde und sich der Benutzer bei einer Debian-basierten Distribution (RaspbianOS auf einem Raspberry Pi) angemeldet hat. Daher habe ich die Zeile sh <path>/startProgram.sh
in die rc.local
Datei eingefügt.
Dass das Startskript aufgerufen wird, weiß ich, weil ich in diesem Skript ein neues Verzeichnis für Debugzwecke angelegt habe. Ansonsten sieht das Skript folgendermaßen aus:
java -jar /home/pi/Downloads/AlarmClock.jar
Und wenn ich es manuell doppelklicke, startet es die Anwendung einwandfrei. Allerdings startet es nicht beim Systemstart. Mein erster Gedanke war, dass der X-Server zu diesem Zeitpunkt noch nicht initialisiert war, aber lautDieser Artikeldas rc.local
Skript ist das allerletzte Init-Skript, das ausgeführt wird, und daher sollte der X-Server bis dahin initialisiert sein (zumindest nach meinem Verständnis)
Hat jemand eine Idee, wie man das Programm startet, das nach der Benutzeranmeldung eine GUI erstellt?
Antwort1
Okay, es hat sich herausgestellt, dass die beste Möglichkeit darin besteht, ein dektop entry
In zu erstellen ~/.config/autostart
, das dann das Skript ausführt, das meine Anwendung startet (ich vermute, es würde auch funktionieren, wenn es direkt von dort gestartet wird).
Hinweis:
Ein Desktop-Eintrag muss die Erweiterung haben .desktop
, sonst funktioniert er nicht, auch wenn der Inhalt korrekt ist.