2012年3月21日水曜日

【Java-Excel】POIをソースからjarにする時にコンパイルエラー(文字化け)が出たときの対処

POIを使用したExcel入出力のあるシステムで一部サーバー環境の変化に起因してレスポンス悪化が発生。

原因調査の一環でapache POIのソースコードにログ出力を埋め込むことになった。
単体でclassだけ作るか悩んでいたところ、普通にbuild.xmlが付いてるのでまとめてコンパイルすることにした。

以下、簡単に流れを整理。
 1.ソースコードをZIPで入手。
 2.antを入手してインストール
 3.ZIPを解凍したところでant jarを実行
  →文字化け発生。(MS932でない)
   testcase.org.apache.poi.hpsf.basic.TestMetaDataIPIで文字化けしてる。
   WindowsXP環境だとMS932に勝手に変えてるのか?
  →で、結局、build.xmlのjavacタグにencoding="utf-8"を追記して解決。

そもそもTestMetaDataIPI.javaはテキストエディタ(秀丸)で開いても文字コードが違うと言われた。。。