BlueJ 2.0 をダウンロードして使ってみたところ、日本語モードにして動作させるとダイアログメッセージが文字化けしていた。dialoguesファイルがUnicodeエスケープされていないからなので、Java2 SE にあるnative2asciiコマンドツールで変換してあげれば良い。
bashの場合は次のようにすればいい。もちろん、環境変数BLUEJ_HOMEはbluejをインストールしたディレクトリを設定するので、ユーザによって変わるはずだ。
$ BLUEJ_HOME=/usr/local/bluej
$ cp $BLUEJ_HOME/lib/japanese/dialogues \
$BLUEJ_HOME/lib/japanese/dialogues.sjis
$ native2ascii -encoding Shist_JIS \
$BLUEJ_HOME/lib/japanese/dialogues.sjis \
> $BLUEJ_HOME/lib/japanese/dialogues
$ cp $BLUEJ_HOME/lib/japanese/dialogues \
$BLUEJ_HOME/lib/japanese/dialogues.sjis
$ native2ascii -encoding Shist_JIS \
$BLUEJ_HOME/lib/japanese/dialogues.sjis \
> $BLUEJ_HOME/lib/japanese/dialogues
Windowsの場合は次のようになる。環境変数BLUEJ_HOMEはbashの場合と同じで、ユーザの環境に応じて書き変えて使うこと。また、表示の都合上改行しているが各コマンドは1行で入力しないといけない。プロンプトをみて判断してもらいたい。
> set BLUEJ_HOME=C:\bluej
> copy %BLUEJ_HOME%\lib\japanese\dialogues
%BLUEJ_HOME%\lib\japanese\dialogues.sjis
> native2ascii -encoding Shist_JIS %BLUEJ_HOME%\lib\japanese\dialogues.sjis >
%BLUEJ_HOME%lib\japanese\dialogues
> copy %BLUEJ_HOME%\lib\japanese\dialogues
%BLUEJ_HOME%\lib\japanese\dialogues.sjis
> native2ascii -encoding Shist_JIS %BLUEJ_HOME%\lib\japanese\dialogues.sjis >
%BLUEJ_HOME%lib\japanese\dialogues
ところで、LinuxでBlueJを利用すると、新しいクラスを作成した場合に文字化けが発生する。tmplファイルがShift_JISコードで保存されているので、EUC-JPコードへ変換してあげればいい。とりあえず、BlueJのMLへ投稿しておかなければ…