dazoyee space

Windowsのサービス化

Windowsにおいてサービス登録するためにすること

Windowsのサービスはjavaのサポートがないため、自らjarをwrapしなければならない

手順(NSSM編)

1. NSSMのダウンロード

NSSM(the Non-Sucking Service Manager)

ここからダウンロードする

http://nssm.cc/download/?page=download

インストールしたらPathを登録してもいいかもしれない
ex) C:\nssm-2.24\win64

2. ディレクトリ作成

任意のディレクトリを作成する。階層に決まりはないが、今回は以下のとおりにする

javaは必要に応じて

3. batファイル作成

@ECHO OFF
REM start.bat  code
java -jar  app(対象のjarファイル).jar

以下ファイルは必要に応じて。

nssm install app(サービス化するアプリケーションの名前)
nssm remove app(サービス化するアプリケーションの名前)

ディレクトリは以下のようになる

4. install.batを実行

すると、
nssm-1.png

サービスをアンインストールするときは、uninstall.bat

参考記事

Windowsプログラムのサービス化


手順(java service wrapper編)

1.java service wrapperのダウンロード

https://wrapper.tanukisoftware.com/doc/japanese/download.jsp

ここからダウンロードする

2. ディレクトリ作成

任意のディレクトリを作成する。階層は以下のとおり

3.wrapperの必要なファイルのコピー

1.でダウンロードしたzipを展開し、必要なファイルを以下の通りコピーする。

ディレクトリは以下のようになる

4. wrapper.confの修正

javaの設定

自らのjavaバージョンや設定によってどれにするか選ぶ必要がある。

(いずれかひとつ)

wrapperメインクラスの変更

クラスパスの追加

エントリクラスの設定

サービス名の設定

5. 動作確認

bin/App.batを実行
出力はlogs/wrapper.logに吐かれる

6. サービス化と解除

bin/InstallApp-NT.batを実行
サービス化の解除はbin/UninstallApp-NT.batを実行すればOK