Mac OS X Lion で javac コマンドが文字化けするのを直す
Mac OS X のターミナルで、javac を実行すると、デフォルトの文字エンコーディングがなぜか、Shift JIS になっているせいで文字化けしてしまう。
対処方法を求めてググると、以下の記事がヒットした。
(Mac OS X Tips::Snow Leopard)ターミナルでのJava文字化け対策 - jitsu102の日記
上の記事では、alias
を使った方法で、
alias javac 'javac -J-Dfile.encoding=UTF-8'
というふうに、rcファイルに定義しておくことで対処していたが、もうちょっといい方法があるんじゃないかなーと思い、探したら、Stack Overflow に自分が期待していたのに近い回答があった。
環境変数 JAVA_TOOL_OPTIONS
にVMを起動するときに渡すオプションを記述しておけば、いちいちjavaのツールを実行するときにオプションを渡さなくても良いらしい。
ということで、自分の場合以下のような記述を、.bashrc に記述することで対処した。
export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8
ところで、なんで Shift JIS なんでしょうね? 最初っから UTF-8 で良い気がするのに... Windows を基準にしているため?