Frage

Ich bin für eine Bibliothek, die mir erlauben wird, den Status eines Windows-Dienst aufblicken zu überprüfen, ob der Dienst gestartet ist und läuft. Ich schaute in die Sigar Bibliothek, aber es ist GPL und daher kann ich es nicht verwenden. Eine kommerzielle oder BSD (ish) Lizenz ist erforderlich, da diese in kommerzielle Software gebündelt wird.

War es hilfreich?

Lösung

Wenn nichts anderes hilft, versuchen Sie einen etwas anderen Ansatz zu denken (wenn Sie können, natürlich), z.

  • Es gibt eine viel freie / nicht-freie Software, die Überwachung der Fall ist, einschließlich Windows-Dienst Überwachung (z nagios, Zabbix, etc.). Diese Monitore haben in der Regel offene API, wo Ihre Java-Anwendung in in einer Reihe von verschiedenen Möglichkeiten integrieren könnte.
  • Wenn Sie die Kontrolle über je Service-Anwendung haben, setzen andere, unterschiedliche Art und Weise für Ihre Java-Anwendung zu überprüfen (z einen Dummy-Listener auf einem Port auszuführen, erstellen Sie eine Datei, etc.). Windows-Dienste sind nicht eine plattformübergreifende Sache also nicht etwas, das man erwarten würde in absehbarer Zeit unterstützt werden.

Andere Tipps

Ich glaube nicht, gibt es jeden reinen Java Weg, dies zu tun, weil einige Betriebssysteme nicht den Begriff „Dienstleistungen“ haben wie Windows. In unseren Projekten schrieben wir um einen Wrapper ruft zum „sc“ Befehl von der Kommandozeile. Um den Status eines Dienstes zu erhalten, können Sie tun:

  

sc \\ some-Computer Abfrage "mein Dienstname"

Sie müssen manuell die Ausgabe analysieren, aber es ist ziemlich einfach.

Ich weiß nicht, von irgendwelchen Bibliotheken, aber je nachdem, wie detailliert müssen Sie Sie mit einigen Shell-Befehlen erhalten, indem bekommen könnten und die Ausgabe Parsen.

NET START service

wird entweder den Dienst starten, oder geben Sie zurück eine Fehlermeldung, die Sie seine bereits begonnen erzählt. Ich weiß nicht, jeder Befehl, den Sie wird jedoch den Status nur geben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top