Hatena::ブログ(Diary)

jitsu102の日記 このページをアンテナに追加 RSSフィード Twitter

2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 |

2011-01-11

(Mac OS X Tips::Snow Leopard)ターミナルでのJava文字化け対策

Snow Loopardには、Java SE 6がインストールされているが、ターミナルでjavacやjavaコマンドを使用すると文字化けする。

これは、Java内部文字コードが"SJIS"なのに対し、ターミナル文字コードデフォルトで"UTF-8"のため発生する。

ターミナル文字コードを変更すれば解決するが、Java使用時だけ切り替えるとか面倒なので、Javaコマンドのオプションで対応することにした。

$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04-307-10M3261)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03-307, mixed mode)

"~/.bash_profile"に下記Alias設定を追加した。

alias javac='javac -J-Dfile.encoding=UTF-8'
alias java='java -Dfile.encoding=UTF-8'

HideHide 2011/01/19 09:53 突然で恐縮ですが,お教え下さい.
Snow Leopardで,jitsu102さんの記事を参考に,~/.bash_profileにAlias設定を追記し,ターミナルからjavacコマンドでコンパイルを行おうとすると,ターミナルが反応しなくなってしまいました.このような場合,どのような対策を取れば良いでしょうか?
javaのバージョンは,同じです.

お時間のある時にお教え頂けると助かります.

jitsu102jitsu102 2011/01/20 22:42 Hideさん

コメントありがとうございます。
aliasコマンドを実行すると、どのような結果が返ってくるでしょうか?
また、javaコマンドによるプログラム実行はいかかでしょうか?

HideHide 2011/01/22 15:11 ご返答ありがとうございます。
picoコマンドで、~/.bash_profileにAlias設定を追及して保存した後、ターミナルから javac ファイル名.javaでコンパイルしようとすると、カーソルが点滅したままになり、反応が返ってきません。
また、コンパイルできない(javaファイルが生成されない)ので、javaコマンドによる実行結果はわかりません。

ちなみに、ターミナルの文字エンコーディングをShift JIS X0213にしてやれば、javacコマンドでコンパイル可、javaコマンドで実行可能です。

お手数をおかけしますが、お教え下さい。
よろしくお願いします。

HideHide 2011/01/22 17:55 すいません。うまくいきました。
~/.bash_profileを編集したあとに、プログラムを作成していた、テキストエディタのエンコーディングを変えるのを忘れていました。エディタの方のエンコーディングをUTF-8にしたら、無事.classファイルを実行した際に日本語が表示されました。
実行時ターミナルの反応がなくなったように見えたのは、文字がスペースに置き換えられていたようです(エンコーディングを変えて試したら"="などに切り替わったので)。

私の不注意で、お手数をかけてしまい、申し訳ありません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証