金曜日の帰り、
自分のバグを発見してテンションも落ちていた時の話。
バグを一通り修正し、具合も悪いので帰ろうとしていた。
反対側の席では別のチームの方が何やらトークしている。
A「tomcatを起動している状態で、修正したjarをあててもなかなか反映されないんです。」
B「ああ、jarにしているからだよ。classファイルにすれば反映されるよ。」
・・・
ちょっと待ったー。
それ、違うと思うぞ!
jarであろうと、tomcatの(というかcontextの)設定で反映はされると思うのだ。
間違った認識はよろしくない。
それ以上によろしくないのは、Bさんが、
僕の上司(元上司?)だということ。
指摘しにくいことこの上なし。
しかしそこは僕もエンジニアだ。
帰る準備を進め、あとは部屋から出る、という状態になった頃
「その認識は正しくないとおもいますよ。」
と一言。
明らかに不機嫌な表情を浮かべるBさん。
「一つは、アプリケーションxml(context.xml)のreloadableをtrueにすればtomcatの再起動なしで反映されるということ。」
「もう一つは、classファイルを配置しなおしても反映はされないということ。ただしこれは実証してません。」
後者に関しては、そもそもやったことないし、やる気もしない。
半ば微妙な空気で討論する僕とBさん。
微妙に当惑するAさん。
言いたいことだけ言って、そそくさと帰宅したのは言うまでもない。
ただ、classファイルの再配置によるtomcatの自動反映なんてのは・・・。(reloadable設定ナシで。)
ナイと思っている。
が、実証していない、というのは気持ちよくない。
ということで、土曜日の午前に、サブPCのセットアップを兼ねて実証してみた。
結果は、
やはり、classファイルだろうが反映はされないことを確認した。
本当はクラスローダーとかの仕様とかをばっちり理解したらいいんだろうけど、
そこまで情熱は注げません。
その後仕事もついでにやっちゃおうか、とも思ったが
休日に仕事なんて精神衛生上よろしくないわ!
ということで、エガちゃんを見に行ったというわけですよ。
そんでぼっこりやられてきたというわけですよ。
さて。Effective javaの続きを読もうか。