Ausführen von Java-console app als daemon (im hintergrund)
Habe ich entwickelt, eine Java-Konsole-Anwendung, die beim start, öffnen Sie eine Konsole-Fenster und bleibt im Vordergrund, ich möchte damit beginnen, dass die Anwendung im hintergrund .
Ich jetzt die Anwendung starten, indem Sie diese Befehlszeile :
java -jar myapp.jar
Gibt es eine Möglichkeit, dies zu erreichen Verhalten ?
Es ist genug, ändern Sie die Befehlszeile-parameter oder ich muss etwas ändern an meinem code ?
- Ihre Frage ist nicht klar. Wollen Sie als Windows-service laufen? Oder wollen Sie eine windows-Konsole? oder beides?
- In welchem Betriebssystem willst du das erreichen?
- Ich bin auf Windows und als windows-Dienst konnte eine gute Lösung . Gibt es eine Möglichkeit zum ausführen eines Java Konsole-Anwendung als Windows-Dienst ?
- vergessen Sie nicht, akzeptieren Sie eine Antwort. 43% ist sehr niedrig.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Antwort ist vom Betriebssystem abhängig.
Wenn Sie dies tun, in alles unix-basiert, dann Sie können fügen Sie & zu, welches das Ende spawnt ein neuer thread und keept es im hintergrund laufen.
nohup
vorWenn Sie wirklich nur wollen, dass es im hintergrund laufen,
java -jar myapp.jar &
wird die Arbeit machen. So, es werden noch sterben, wenn die shell geschlossen wird, sondern Sie halten können mit der shell.Wenn Sie wirklich wollen, ihn als daemon,
nohup java -jar myapp.jar &
wird die Arbeit machen. So, werde es weiter zu Leben, wenn die shell geschlossen wird.Wenn Sie wollen, dass dies zuverlässig, können Sie bereiten ein init-Skript oder upstart-job definition, oder führen Sie es über Vixie
cron(8)
@reboot
Planer, um es nach dem Booten starten.Gegeben, dass Sie Windows benutzen, könnten Sie in Erwägung ziehen Java Service Wrapper. Ich habe es auf einem Projekt in der Vergangenheit.