Ich habe eine Menge Zeit damit, ein Java-Programm zu bekommen, das in einem Init-Skript mit start-stop-daemon startet. Ich habe das Init-Skript geschrieben und es scheint zu laufen, aber es gibt nie einen Prozess, der das laufende Programm darstellt.
Hier ist ein Ausschnitt meines init-Skripts
%Vor%Wenn ich versuche es über /etc/init.d zu starten, bekomme ich folgendes:
/etc/init.d# /etc/init.d/myscript start
Starten von myprogStart / usr / bin / java ...
Entsperren um / usr / bin / java ... fertig zu starten.
.
Danach läuft kein Java-Interpreter-Prozess, der myprog.jar ausführt
Ich habe verschiedene Kombinationen von --exec ausprobiert - starte mit mehr oder weniger gleichen Ergebnissen. Wenn ich mehr Einblick bekommen könnte, was vor sich geht, bin ich mir sicher, dass ich das herausfinden könnte, aber ich bin mir nicht sicher, wie ich das machen soll.
Irgendwelche Vorschläge?
(Ich betreibe Angstrom auf einer eingebetteten ARM-Plattform, so dass Java Service Wrapper nicht wirklich eine brauchbare Option ist, dh ich denke nicht, dass sie für ARM verfügbar ist)
Ich stecke fest, so dass jeder Rat wirklich geschätzt werden würde.
Danke.
Zwei Dinge, die Sie ausprobieren sollten, versuchen Sie zunächst, --startas
zu entfernen und --exec
stattdessen so zu verwenden:
Zweitens, da Sie --background
verwenden, versuchen Sie es mit der Option --chdir
, wenn das Arbeitsverzeichnis nicht /
ist.
Ich stolperte auf Ihre Frage, die versucht, mein Problem zu lösen, das schließlich von --chdir
gelöst wurde, ich glaube, dass es auch Ihr auflösen wird.
Sie suchen nach einer Möglichkeit zu laufen und in der Lage zu sein, es zu überwachen?
haben Sie versucht, MS Batch-Programmierung noch es?
zum Beispiel
%Vor%mainFile = main.java? DirectoryOfFiles = das Verzeichnis, in dem Sie alle Klassendateien haben, wenn die Datei im selben Verzeichnis läuft, entfernen Sie einfach diese Zeile
hoffentlich das ist, wonach Sie fragen
Tags und Links java arm angstrom-linux start-stop-daemon