お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-01-18 19:57:03

oiron
新しいメンバ
登録日: 2009-01-12

mecab-javaの文字化けについて

谷口です。
ubuntu8.10
jdk1_5u17
mecab-0.97(utf8)mecabと辞書は、utf8化して
mecab
すももももももももものうちは、化けません。
の環境で、
mecab-java0.97

のtest.java
をeclipse3.3.2で、実行すると化けてしまいます。
化けないようにする方法ご教授いただけますでしょうか。

オフライン

 

#2 2009-01-18 21:00:31

STGSAGWAN
ゲスト

Re: mecab-javaの文字化けについて

eclipseがビルドに使うJavaがjdk1_5u17かどうか確認してみては?
デフォルトのgcj(GNU Compiler for Java)を使ってませんか?

 

#3 2009-01-18 22:49:42

STGSAGWAN
ゲスト

Re: mecab-javaの文字化けについて

あれからやってみましたが、私の環境ではどうにも文字化けしないです。
(済みません、上で書いた予想は外しているかもしれません。)

気になる事と言えば、

jdk1_5u17ってどこからインストールされましたか?

あとは、簡単な日本語のHello World!のサンプルを作ってみて、それで文字化けしますか?
そのサンプルで文字化けすれば、根本的にeclipse自体の環境が何かがおかしいのでしょう。

以下私が行った手順を参考までに書きます。
※今回は動作を見るだけなので、ライブラリ(*.so)やJavaのライブラリ(*.jar)の場所は適当にやってます。

http://mecab.sourceforge.net/ を参考に
mecab(mecab-0.97.tar.gz)
mecab-java(zxfv mecab-java-0.97.tar.gz)
mecab-ipadic(mecab-ipadic-2.7.0-20070801.tar.gz)
をダウンロードしておく。

# 私はsun-java5-jdkだけじゃなくて、sun-java6-jdk も入れてみました
sudo apt-get install build-essential eclipse sun-java5-jdk sun-java6-jdk

# mecab の設定
cd
tar zxfv mecab-0.97.tar.gz
cd mecab-0.97
./configure
make
make check
sudo make install
sudo ldconfig

# 希望のjavaを選択していることを確認
sudo update-alternatives --config java
もしくは単純に
java -version
javac -version

なお、sun-java5-jdkでは当初、実行時に java.lang.UnsupportedClassVersionError: Bad version number in .class fileというエラーで動かなかったので、結局、sun-java6-jdkを使いました。
後で調べたら、私の環境ではsun-java5-jdkについては、update-alternativesを使って切り替えると、javaとjavacのバージョンが混在しおかしな状態なることが分かりました。結局それを回避するには、無理やりPATHを変えてやることで対処しました。

# mecab-java の設定
cd
tar zxfv mecab-java-0.97.tar.gz
cd mecab-java-0.97
make clean
make

# mecab-ipadic の設定
cd
tar zxfv mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf8
make
sudo make install

4) java実行(端末)
cd
cd mecab-java-0.97
export LD_LIBRARY_PATH=`pwd`
java test

5) Eclipse実行
1. Javaプロジェクトを新規作成
2. mecab-java-0.97フォルダをプロジェクトにインポート
3. メインクラスにtestを指定し、LD_LIBRARY_PATHに mecab-java-0.97のパスを設定
4. Java実行


p.s. mecabって非常に面白いですね。

最後の編集者: STGSAGWAN (2009-01-18 23:35:25)

 

#4 2009-01-19 11:06:37

oiron
新しいメンバ
登録日: 2009-01-12

Re: mecab-javaの文字化けについて

STGSAGWANさん
返信ありがとうございます。
谷口です。
>jdk1_5u17ってどこからインストールされましたか?
http://java.sun.com/j2se/1.5.0/ja/download.html
上記のサイトになります。
>あとは、簡単な日本語のHello World!のサンプルを作ってみて、それで文字化けしますか?そのサンプルで文字化けすれば、根本的にeclipse自体の環境が何かがおかしいのでしょう。
eclipse3.2.0で化けませんでした。
javac -version
javac 1.5.0_17
です。
他に確認するするところ
がございましたらご指摘お願いします。
とりあえずわたしもjdk6いれてみます。

オフライン

 

#5 2009-01-20 09:26:00

oiron
新しいメンバ
登録日: 2009-01-12

Re: mecab-javaの文字化けについて

ご返信有難うございます。
谷口です
手順を参考に構築してみましたところ
http://java.sun.com/j2se/1.5.0/ja/download.html

5
でも
http://java.sun.com/javase/ja/6/download.html
の6
でも大丈夫になりました。
やはりeclipse(起動時)の問題だったようです。

元々
スクリプト経由で、eclipseを起動してたんですが、どうもその途中で、文字コードがおかしくなっているようだったので、
スクリプトをはずして、
直接
/home/norio/tools/eclipse3.2/eclipse  -vm /usr/local/jdk/bin/java
で、起動するようにしたところ、
文字化けしなくなりました。
アドバイスありがとうございました。

オフライン

 

#6 2009-01-20 18:57:35

STGSAGWAN
ゲスト

Re: mecab-javaの文字化けについて

直ってよかったですね。

ただ、最後に一つだけ教えていただけますか?

oiron による投稿:

元々
スクリプト経由で、eclipseを起動してたんですが、どうもその途中で、文字コードがおかしくなっているようだったので、
スクリプトをはずして、

それは自作のシェルスクリプトですか?
それともパッケージか何かに添付されているものでしょうか?

もし後者だとしたら、誰もが陥る罠かと思いますので、念の為にお聞きしておきたいだけなのです。

最後の編集者: STGSAGWAN (2009-01-20 18:58:17)

 

#7 2009-01-22 18:19:26

oiron
新しいメンバ
登録日: 2009-01-12

Re: mecab-javaの文字化けについて

すいません自作ですので、他の方は、大丈夫だと思います。
ありがとうございました。

オフライン

 

Board footer

Powered by FluxBB