Eclipse Jetty は 100% Java で開発された軽量なサーブレットコンテナ/Web サーバーです。Jetty for Windows は Eclipse Jetty を Windows 環境でサービスとして動作するようにした派生バージョンです。

2020-10-25
Jetty 9.4.32 をリリースしました。

ダウンロード

Jetty 9.4.32 + JRE 11.0.9 x64
ダウンロード (55.7MB)
Jetty 9.4.32 + JRE 8u272 x64
ダウンロード (54.8MB)

デモ・アプリの実行

Jetty の配布物に同梱されているデモ ・ アプリを実行してみましょう。

デモ ・ アプリは demo-base フォルダに格納されています。このフォルダを jetty.base として指定すると、 デモ ・ アプリを配備することができます。Jetty の配布物を C:\jetty に展開した場合、 以下のようにしてデモ ・ アプリを実行します。

コマンドプロンプト
C:¥jetty>jetty.exe jetty.base=demo-base

これでデモ ・ アプリを配備した Jetty が起動します。標準構成のままなら http://localhost:8080/ にアクセスすることで Jetty が動作していることを確認することができます。

examples の下に並んでいるリンクをクリックするといくつかのデモを試すことができます。

WebSocket を使ったチャット ・ アプリなどもあります。

Jetty を起動したコマンドプロンプトで Ctrl + C を入力すると、 Jetty が停止します。

jetty.homeとjetty.base

Jetty 9.1 以降では Jetty バイナリや標準モジュールを格納する jetty.home と、 ユーザーのアプリケーションおよびカスタマイズを格納する jetty.base を分離できるようになりました。自分のアプリケーション (WAR) を追加する場合は jetty\webapps に直接配備するのではなく、 myapp-base\webapps のような独自のフォルダを作成して myapp-base を jetty.base に指定するのが良いと思います。

インストール・使い方

Jetty for Windows のインストールはとても簡単です。以下の説明では Jetty が C:\jetty に展開されていることを前提としています。Jetty を展開しているディレクトリが異なる場合は、 適宜、 読み替えてください。

通常のコンソールプロセスとして実行する

まずは jetty.exe が正しく動作することを確認するために通常のコンソールプロセスとして実行してみましょう。Jetty をインストールしているディレクトリに移動して次のコマンドを入力します。

コマンドプロンプト
C:¥jetty>jetty.exe

これで Jetty を起動することができます。標準構成のままなら http://localhost:8080/ にアクセスすることで Jetty が動作していることを確認することができます。Jetty を停止するときは Ctrl + C を入力します。

サービスとしてインストールする

jetty.exe をサービスとしてインストールするために次のコマンドを入力します。

コマンドプロンプト
C:¥jetty>jetty.exe -install jetty サービスをインストールしました。

これでサービスのインストールは完了です。コントロール パネル → 管理ツール → サービス に、 jetty という名前のサービスが表示されます。既定のインストールでは、 サービスのログオン(実行アカウント)は ローカル システム アカウント に、 スタートアップの種類は 自動 になります。サービス構成オプションを指定することで異なる構成でサービスをインストールすることもできます。詳細についてはサービス構成オプションを参照してください。

jetty.base などのパラメーターを指定する場合は、 コマンドライン引数 -install よりも後に記述してください。たとえば、 デモ ・ アプリ demo-base をサービスとして配備する場合には以下のようにします。(jetty.base にはフルパスを指定しましょう。)

コマンドプロンプト
C:¥jetty>jetty.exe -install jetty.base=C:¥jetty¥demo-base jetty サービスをインストールしました。

サービスを開始する

インストールした jetty サービスを開始するために次のコマンドを入力します。

コマンドプロンプト
C:¥>net start jetty jetty サービスは正常に開始されました。

net start コマンドを使う方法の他に コントロール パネル → 管理ツール → サービス から jetty を選択して開始することもできます。また、 既定のインストールではスタートアップの種類が 自動 になっているため、 コンピューターの起動時に jetty サービスが自動で開始されます。

サービスの開始には管理者権限が必要です。「アクセスが拒否されました。」 と表示される場合は、 コマンドプロンプトが管理者権限で実行されているか確認してください。

サービスを停止する

開始状態の jetty サービスを停止するために次のコマンドを入力します。

コマンドプロンプト
C:¥>net stop jetty jetty サービスを停止中です. jetty サービスは正常に停止されました。

net stop コマンドを使う方法の他に コントロール パネル → 管理ツール → サービス から jetty を選択して停止することもできます。

サービスをアンインストールする

停止状態の jetty サービスをアンインストールするために次のコマンドを入力します。

コマンドプロンプト
C:¥jetty>jetty.exe -remove jetty サービスを削除しました。

サービス構成オプション(インストール時)

インストール時のサービス構成オプションは、 jetty.exe をサービスとしてインストールするときに指定することができます。インストール時のサービス構成オプションは -install よりも前に指定する必要があります。-install よりも後に指定した引数は、 サービスの実行時引数として渡されます。

たとえば、 スタートアップの種類を 手動 にしてサービスをインストールする場合は以下のようにします。

コマンドプロンプト
C:¥>jetty.exe -m -install
サービス構成オプション説明
-installサービスとしてインストールします。他の構成オプションは、 必ず -install よりも前に指定してください。
-n <display-name>サービスの表示名を指定します。既定のサービス表示名は jetty です。
-iデスクトップとの対話をサービスに許可します。
-mスタートアップの種類を 手動 にします。このオプションを指定しない場合、 スタートアップの種類は 自動 になります。
-d <dependencies>サービスの依存関係を指定します。たとえばサービスがイベントログサービスを必要としている場合は、 -d Eventlog としてイベントログサービスに依存させます。複数のサービスに依存する場合は、 サービス名をセミコロン ; で区切ります。
-u <username>サービスの実行アカウントを指定します。通常のユーザーアカウントのほかにビルトイン ・ システムアカウントとして、 NT AUTHORITY\System、 NT AUTHORITY\LocalService、 NT AUTHORITY\NetworkService が指定できます。
-p <password>サービス実行アカウントのパスワードを指定します。ビルトイン ・ システムアカウントを使用する場合は、 パスワードを指定する必要はありません。
-sサービスをインストールした後に、 ただちにサービスを開始します。

サービス構成オプション(アンインストール時)

アンインストール時のサービス構成オプションは、 jetty サービスをアンインストールするときに指定することができます。アンインストール時のサービス構成オプションは -remove よりも前に指定する必要があります。

サービスを停止してからアンインストールする場合は以下のようにします。

コマンドプロンプト
C:¥>jetty.exe -s -remove
サービス構成オプション説明
-removeサービスをアンインストールします。他の構成オプション -s は、 必ず -remove よりも前に指定してください。
-sサービスをアンインストールする前に、 サービスを停止します。