Linux下jdk1.5的安裝及中文顯示問題解決方案


1.    首先,從sun下載jdk1.5的安裝文件,一般有兩種。
下載地址:http://java.sun.com/j2se/1.5.0/download.jsp
Linux RPM in self-extracting file (jdk-1_5_0-linux-i586-rpm.bin, 42.50 MB)
Linux self-extracting file (jdk-1_5_0-linux-i586.bin, 43.95 MB)
簡單說一下兩個安裝文件的區別,Linux RPM in self-extracting file是一個把rpm安裝包封裝在壓縮包內的二進制格式,在linux操作系統的命令行下,給文件加上執行的權限chmod a+x jdk-1_5_0-linux-i586-rpm.bin,然後./jdk-1_5_0-linux-i586-rpm.bin之後可以得到jdk-1_5_0-linux-i586.rpm這個rpm包,之後安裝rpm包還用多說麼?rpm ?ivh package-name。前者的好處是容易安裝和維護,傻瓜式的。而後者則適合高級的用戶,相當於一個zip版本的“綠色”jdk,沒有安裝程序,安裝完之後可能需要做一些鏈接(具體可以參考jdk安裝指南文檔)。同樣地給後者加上執行權限之後直接執行二進制文件即可得到jdk 1.5.0,一般用戶的習慣都是將jdk放在/usr/java下,rpm安裝後默認是在/usr/java下。
2.    安裝好之後要做的便是環境變量的設置,也可分爲兩種不同的情況。
第一種是對於單個用戶的的環境變量設置。需要修改用戶所對應的.bash_profile文件。我們可以通過vi ~/.bash_profile來編輯當前用戶的bash_profile文件,當然你也可以用你自己喜歡的編輯器。在開頭或者適當的地方插入一下代碼:
export JAVA_HOME=/usr/java/jdk1.5.0
export CLASSPATH=.
export PATH=$JAVA_HOME/bin:$PATH
然後保存文件,註銷重新登陸之後在控制檯下輸入java ?version,如果出現一下信息則說明安裝設置已經成功。
注意:此代碼是爲了看起來簡單,所以沒有加上覆雜的變量引用,熟悉shell的用戶可以參  照第二種方法的代碼進行修改。
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
Java HotSpot(TM) Client VM (build 1.5.0-b64, mixed mode, sharing)

第二種是設置Linux的全局環境變量(需要root權限),修改/etc/profile,在適當的地方加入以下代碼:
JAVA_HOME=/usr/java/jdk1.5.0
PATH=$JAVA_HOME=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH JAVA_HOME CLASSPATH
修改完成後保存,註銷當前用戶重新登陸後按照第一種同樣的方法進行測試查看是否成功。
至此,基本的安裝和環境變量設置已經完成了。
至於正確顯示applet的瀏覽器的插件安裝請查看Sun的文檔:
http://java.sun.com/j2se/1.5.0/install-linux.html#plugin
http://java.sun.com/j2se/1.5.0/manual_install_linux.html
接下來要說如何修改配置來正確顯示中文字體。
3.    最後來解決一下中文字體的顯示問題。Jdk1.5.0的字體配置和1.4.x的時候相比有了很大的差別。先來看一下不作任何修改的情況下ControlPanel中文字體的顯示情況,如圖:
 
雖然能顯示一下中文,但是有一大半是無法正常顯示的方塊,很不爽。下面我們就來解決這個問題。
先來看一下Sun公司對JRE1.5.0版的中文字體設置的官方說明中的一些資料:
介紹一下其字體配置文件的加載方案。其加載順序爲(JavaHome指JRE的根目錄,下同):JavaHome/lib/fontconfig.OS.Version.properties
JavaHome/lib/fontconfig.OS.Version.bfc
JavaHome/lib/fontconfig.OS.properties
JavaHome/lib/fontconfig.OS.bfc
JavaHome/lib/fontconfig.Version.properties
JavaHome/lib/fontconfig.Version.bfc
JavaHome/lib/fontconfig.properties
JavaHome/lib/fontconfig.bfc
其中,OS字段可以是:
Windows: "98", "2000", "Me", "XP", "2003"。
Solaris:空。
Linux: "Sun", "RedHat", "Turbo", "SuSE"。
而Version字段指該OS的版本號。
在這些配置文件中,僅.properties文件是文本文件。其格式跟JRE1.4.2版的不同。文件分爲幾段,並在每段開始時標明。
我們需要關注的僅有兩段:Component Font Mappings和Search Sequences。前者指定字體,後者指定要使用的properties的搜索順序。
知道了這些,配置起來就簡單了。
看了是不是有點暈,而且覺得沒用?不要急下面會用到的。
先把字體文件Simsun.ttf(可以從windows下拷貝一份到linux下)拷貝到JRE的字體目錄$JAVA_HOME/jre/lib/fonts下,接着編輯字體目錄下的文件fonts.dir,把第一行的數字加1,然後在最後加一行加上:
simsun.ttf -SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0
然後保存文件。
最後把字體配置文件改名爲fontconfig.RedHat.properties這種形式(Fedora Core x也是Redhat的衍生物),把$JAVA_HOME/jre/lib下多餘的fontconfig開頭的文件全部移到新建的bak目錄下,當然你不備份也可以只是除了問題不要找我^_^
注意:如果你的Linux不是Redhat和Fedora Core系列,請按照自己的發行版本對字體配置文件做相應的修改,參照Sun公司的資料,jds、Suse和Turbo應該沒問題了,至於Debian和Mandrake我就不得而知了,如果大家按照自己的方式修改成功了請告訴我詳細情況以便於我完善這個文檔。
然後再在控制檯下執行ControlPanel看看,是不是很爽!如圖:
 
還有自己的程序也能完美的顯示中文字體了!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章