hakobera's blog

技術メモ。たまに雑談

SpringでHotdeploy その2

Springは内部で色々とキャッシュを持っているので、Hotdeployするためにはそれを無効化する方法を考えなくてはいけません。

と言っても、ゼロから調査するのは大変なので、先人の知恵を拝借。ひがさんのところでも紹介されていた以下のOSSを参考にしました。

JavaRebel Spring integration plugin

こいつは、Javarabelという動的クラスローディングライブラリーのプラグインだし、内部ではJavassistを利用してクラスファイルを動的に変更しているという、ある意味、最先端?方法でHotdeployを実現しています。

でも、この方法だとHotdeployのON/OFFとか制御が自分でできないし、なんだか邪道な気がするので、普通にXmlWebApplicationContextを継承して、拡張する方法を選択します。

というわけで、準備が整ったので実装は次から1つずつ書いていきます。