2007年11月21日 星期三

java 的一些問題


明明有裝 java 和 java-plugin
$ rpm -qa | grep java
java-1_5_0-sun-plugin-1.5.0_update13-0.5
java-1_5_0-sun-1.5.0_update13-0.5

卻說你沒裝
檢查一下
SuSE 安裝的 browser-plugin 都在 /usr/lib/browser-plugins/
$ cd /usr/lib/browser-plugins/
$ ll
總計 9900
-rwxr-xr-x 1 root root 856 2007-09-22 06:02 flashplayer.xpt
lrwxrwxrwx 1 root root 28 2007-10-21 09:04 javaplugin.so -> /etc/alternatives/javaplugin
-rwxr-xr-x 1 root root 8098568 2007-10-21 11:52 libflashplayer.so
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in-dvx.so
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in-dvx.xpt
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in-gmp.so
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in-gmp.xpt
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in-qt.so
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in-qt.xpt
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in-rm.so
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in-rm.xpt
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in.so
-rwxr-xr-x 1 root root 312039 2007-10-06 03:54 mplayerplug-in-wmp.so
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in-wmp.xpt
-rwxr-xr-x 1 root root 1021 2007-10-06 03:54 mplayerplug-in.xpt
-rwxr-xr-x 1 root root 63167 2007-09-22 06:18 nphelix.so
-rwxr-xr-x 1 root root 5086 2007-09-22 06:18 nphelix.xpt
lrwxrwxrwx 1 root root 42 2007-10-21 09:06 npwrapper.so -> ../nspluginwrapper/i386/linux/npwrapper.so

這表示連結出了問題
$ cd /etc/alternatives
$ ll java*
lrwxrwxrwx 1 root root 35 2007-11-20 18:31 java -> /usr/lib/jvm/jre-1.5.0-sun/bin/java
lrwxrwxrwx 1 root root 44 2007-11-20 18:31 java.1.gz -> /usr/share/man/man1/java-java-1_5_0-sun.1.gz
lrwxrwxrwx 1 root root 83 2007-10-21 10:02 javaplugin -> /usr/lib/jvm/java-1.5.0-sun-1.5.0_update12/jre/plugin/i386/ns7/libjavaplugin_oji.so
lrwxrwxrwx 1 root root 37 2007-11-20 18:31 javaws -> /usr/lib/jvm/jre-1.5.0-sun/bin/javaws
lrwxrwxrwx 1 root root 46 2007-11-20 18:31 javaws.1.gz -> /usr/share/man/man1/javaws-java-1_5_0-sun.1.gz

找到問題了
我已經升級到 java-1.5.0-sun-1.5.0_update13 而連結卻是連到 java-1.5.0-sun-1.5.0_update12
$ sudo rm javaplugin
$ sudo ln -s /usr/lib/jvm/java-1.5.0-sun-1.5.0_update13-sr2/jre/plugin/i386/ns7/libjavaplugin_oji.so javaplugin

java 的路徑幹嘛這麼複雜啊?
接下來您可以到 http://www.java.com/zh_TW/ 驗證 java 安裝
若沒辦法通過驗證
請在 ~/.profile 中加上
export LIBXCB_ALLOW_SLOPPY_LOCK=1
重新登入 X,再去驗證一下。


java 的中文有沒有問題
可以從 java 控制面板中看出來

是因為 SuSE 預設使用 founder-MingTiB 就是方正明體(FZMingTiB)(FZMingTiB.ttf)
您可以從 /usr/lib/jvm/jre/lib/fontconfig.SuSE.properties 看出來
這個字型在使用 DVD 安裝或 CD 在中文化前加入 non-oss 的套件庫都會安裝
它包含在 ttf-founder-traditional 這個套件中
如果您已經將此套件移除
也可以用其他字型替代

***補充說明一下,如果您裝了 opendesktop-fonts-odosung 這個套件
直接開啟終端機
$ su
# SuSEconfig --module fonts

應該也可以顯示中文***

在 java-1.5 之後都可以使用 fallback 這個目錄中的字型當作預設字型
例如我的系統中使用 uming 這個字體
將這個字體連結或複製到該資料夾即可
$ cd /usr/lib/jvm/jre/lib/fonts
$ sudo mkdir fallback
$ cd fallback
$ sudo ln -s /usr/share/fonts/truetype/uming.ttf .


最後,我們回到中國信託證券的網站 http://www.win168.com.tw/
java 跑馬燈仍是方框

在 java 字型調整好之後還看到方框,通常就是編碼出了問題
請用終端機執行
$ export LC_ALL="zh_TW.Big5"; firefox

此時就可以看見跑馬燈了

2 則留言:

shelandy 提到...

這篇在planet.linux.org.tw 晚了一天才出來。

swyear 提到...

我知道,因為我的 igoogle 有訂閱了自己的和 planet 的 rss,我注意到了這個情況,所以上次我才會插入討論。