mof-brown

ずっとモフモフしてたい

Play framework で Custom Appender を利用すると ClassNotFoundException が発生する

以前から Play framework 1.2.x でアプリケーション開発を行なっているのですが、ログ周りの実装で幾つか要件があったため、Custom Appender を用意して log4j.properties に指定していました。

ログレベルの設定

Eclipse 上で開発・確認している間は特に問題なかったのですが、いざ本番環境で動かそうと play run/start すると、Custom Appender が見つからないらしく ClassNotFoundException が発生してしまいました。

マジかよ!と思って色々調べてみたのですが、どうも Eclipse 上で開発している間はビルドパスが参照先として追加されているので問題なく動いていた、っていうことのようです。

Play の仕組みを考えるとそうなるか・・・と思うけど、開発時に気付けないのは辛いなぁ。

Custom Appender を jar ファイル化して lib に突っ込めば解決しそうですが、今回開発した Custom Appender は開発した Play アプリに依存していたので切り出すことも出来ず...結局一旦諦めることにしました。次は気をつけよう。