systemctl Java Service mit Netzwerk

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Guten Abend liebe Tüftler,

    ich zanke mich seit den Mittagsstunden mit Rasbpian. Ich versuch bei systemctl einen Service einzutragen, der eine Jar starten soll.
    Die Jar wird ausgeführt aber hat kein Zugriff auf das Netzwerk (Es wird in dem Programm eine PeerToPeer Verbindung aufgebaut).

    Ich benutze eigentlich zum Testen 1:1 die Konfigurationsdatei die unter diesem Link zu finden ist (Zum eintragen des Services).


    Ich habe die Datei erstellt:
    [font="Titillium, -apple-system,"]/etc/systemd/system/pin_software.service[/font]

    und mit diesem Befehl gestartet:

    Code
    $ sudo systemctl enable pin_software

    Wenn ich nun den Status Abfrage bekomme ich folgende Exception:

    Die gleiche Fehlermeldung bekomme ich, wenn ich den Server ausschalte oder der PI kein WLAN hat. Meine Vermutung ist, dass der Service eventuell kein Recht hat, auf das Netzwerk zuzugreifen und deshalb kann keine Verbindung aufgebaut werden. Doch wie vergebe ich dieses Recht an Service?

    Führe ich in der Konsole den im Service eingetragenen Befehl aus (sudo /usr/bin/java -jar /home/pi/ConnectionTest.jar)
    Funktioniert das Programm.

    Ich hoffe ihr könnt mir helfen!
    Vielen Dank im Voraus.

    Viele Grüße :)

    Einmal editiert, zuletzt von jRaspbian (13. September 2017 um 01:03)

  • Bei Arbeiten mit Services ist es sehr wichtig in dem Programm keine Properties in Ordnern zu laden...

    Sowas wie:

    Code
    Properties p = new Properties();
    
    
    p.load(new FileReeader("folder/MyProps.properties");

    funktioniert nicht.

    beim Aufruf des Programms den Classpath mitgeben:

    Code
    java -cp /home/pi/folder/ -jar ConnectionTest.jar

    und Properties OHNE den Ordner laden:

    Code
    Properties p = new Properties();
    
    
    p.load(new FileReeader("MyProps.properties");

    An sich ein sehr einfacher Fehler.. Die Connection hat nicht funktioniert, da die Properties nicht geladen werden konnten.
    Jetzt funktioniert alles :)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!