Jettyでホットデプロイ

Jettyでもホットデプロイができるようなので調査。
結論から書くとクラスファイルの更新がすぐさま反映されるという意味ではなく、デプロイを検知してくれるだけっぽいです。Tomcatみたいにクラスファイルの更新を検知してくれるといいんだけど、やりかたは分からなかった。。。

Eclipseで、Jetty起動プロジェクトを作成します。Jettyの起動プロジェクトについては、以前の記事を参考に。
起動用のスクリプトjetty.xmlを記述します。ここにはWebAppContextを記述しません。代わりに、ContextDeployerを設定します。ContextDeployerはコンテキストのディレクトリで、ここにデプロイ用デスクリプタを配置するとデプロイされます。

起動用Jetty.Xml
...省略...







C:\Foo\Bar\JettyHotDeploy\contexts
1



...省略...

プロジェクト内に、contextsというフォルダを用意しました。こちらにWebアプリケーション単位のデスクリプタとして、context.xmlを作成して配置します。

Webアプリケーション用context.xml


/
C:\Foo\Bar\JettyHotDeploy\WebContent

これでJettyを起動します。クラスファイルを更新してもリデプロイされませんが、context.xmlを更新するとリデプロイされます。

動作確認したサンプルはこちら。

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください