2011-09-29 8 views
5

コンソールアプリケーション(Javaで書かれています)があります。コンソールアプリケーションは、Linuxマシンで停止するまで実行する必要があります。LinuxのJavaデーモン:選択肢?

ロギングはアプリケーション自体によって行われます。

新しいバージョンが利用可能になるたびにアプリケーションを停止する必要があります(ログイン、アプリケーションの停止、新しいJARファイルのコピー、再起動)。

以下に指定されているものとは別に、これを実装するためのオプションは何ですか?それを行う方法を知ら

1)狸サービスラッパー

2)Javaのnohupを私は、この起動スクリプト使用してい-jar myappの-1.32.jar &

+0

あなたのニーズに完全に合っていないとしても、カピストラーノを見ることができます。 – leonm

+0

正常にサービスを停止するためのシャットダウン信号を聞くことができるサービスを見つけてください。 –

+0

コンソールアプリケーションがシャットダウンする必要があることを検出できますか? –

答えて

2

現代のLinuxディストリビューションの中には、upstartに切り替わったものがあります。それは、他のすべてのサービスを開始し停止する大隊です。私は間違いなくそれを調べるだろう。これは、プロダクションが準備が整った開始スクリプトでいくつかの面倒な問題を解決するためです。欠点は、Java固有の機能がないことです。

+0

あなたの提案をありがとう。あなたが投稿したリンクは、外部ソートに関するWikipediaの記事を参照しています。私は新興企業と何が関係しているのか理解していない。 –

+0

申し訳ありませんが、間違ったリンクです。私は意味:http://upstart.at/ – jmg

6

私はJava Service Wrapperを使用していますが、それを編集しました。私はそれがあなたのニーズに合っていると思います。

Apache Commons Daemonも人気があります:http://commons.apache.org/daemon/、しかし私は一度も使っていません。

0

ありもApacheのコモンズのデーモンhttp://commons.apache.org/proper/commons-daemon/jsvc.html

JSVCは、より簡単にUNIX上で動作するJavaアプリケーションを作るためのライブラリとアプリケーションのセットです。

Jsvcは、アプリケーション(例えば、Tomcat)がルート(例えば、ポート< 1024にバインドする)としていくつかの特権操作を実行し、非特権ユーザにアイデンティティを切り替えることを許可する。

関連する問題