[分享]Java字体从此站起来了!--安装JDK6.0 RC1有感

软件和网站开发以及相关技术探讨
回复
XMAN
帖子: 57
注册时间: 2006-10-21 4:30

[分享]Java字体从此站起来了!--安装JDK6.0 RC1有感

#1

帖子 XMAN » 2006-12-07 5:20

想必大家都被Java的字体模糊问题困扰过,在Linux下更是如此
无论英文还是中文,Java界面给我们的感觉和WIN比起来简直就是受罪
很多人一直发帖在问:怎么让Java程序可以使用系统字体呢?
但是,因为在JDK1.5及以前的版本中,Java底层KVM对字体的渲染是无法解决这个问题的(具体原因要问JDK设计人员了)
好在,从JDK 6.0开始,字体问题不会再困扰我们了
首先,到http://download.java.net/jdk6/binaries/下载最新的安装包
下载好之后(我下载的是jdk-6-rc-bin-b104-linux-i586-01_nov_2006.bin),首先改变一下权限
chmod +x jdk-6-rc-bin-b104-linux-i586-01_nov_2006.bin
然后sudo sh jdk-6-rc-bin-b104-linux-i586-01_nov_2006.bin
这实际上是一个解压缩的过程,所以你可以得到一个解压缩后的文件夹“jdk1.6.0”
我之前安装过1.5.0的JDK,安装目录在/usr/lib/jvm
因此统一起见,我也把JDK1.6.0也放到这个目录下
然后进入/etc目录下
sudo gedit /etc/environment
修改为

代码: 全选

CLASSPATH=.:/usr/lib/jvm/java1.6.0/lib
JAVA_HOME=/usr/lib/jvm/java1.6.0
要使JDK支持中文,最简单的方法是

代码: 全选

cd /usr/lib/jvm/jdk1.6.0/jre/lib/fonts
sudo mkdir fallback 
cd fallback 
sudo ln -s /usr/share/fonts/zh_CN/msyh.ttf . 
sudo mkfontdir 
sudo mkfontscale
这里的msyh.ttf是你系统里面的中文字体即可

我再说一下NetBeans5.5的安装
首先去http://www.netbeans.org下载5.5的BIN包"netbeans-5_5-linux.bin"
然后
chmod +x netbeans-5_5-linux.bin 改变一下权限
sudo sh netbeans-5_5-linux.bin
默认安装到/opt/目录下
安装时,注意选择JDK的路径为你1.6.0的路径
(这里如果你没有设置为1.6.0的目录,也可以在安装完毕后进入NB安装目录下的/etc/netbeans.conf, 修改netbeans_jdkhome=)
一路NEXT就OK了
5.5版的NB在Java源代码中可以输入中文了
如果你使用了Beryl之类的3D桌面软件,可能会造成NB界面无法渲染,这时只要在Beryl管理器里面把窗口管理器更改为Gnome的管理器就可以了

如果你需要安装NetBeans的额外包
比如netbeans-mobility-5_5-linux.bin

代码: 全选

chmod +x netbeans-mobility-5_5-linux.bin
sudo su
sh netbeans-mobility-5_5-linux.bin
XMAN
帖子: 57
注册时间: 2006-10-21 4:30

#2

帖子 XMAN » 2006-12-07 6:13

大家好,我是楼主
我遇到了一个问题
我原来通过APT自动安装了JDK1.5
现在的情况是即使我在/etc/environment里面设置了CLASSPATH,JAVA_HOME为1.6.0的HOME
但是在终端里面运行java -version查看时还是显示的是1.5的。。。
这要到哪里去修改啊?
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#3

帖子 zhuqin_83 » 2006-12-07 8:03

sudo update-alternatives --config java
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
XMAN
帖子: 57
注册时间: 2006-10-21 4:30

#4

帖子 XMAN » 2006-12-07 9:42

zhuqin_83 写了:sudo update-alternatives --config java
Hi,
这个命令我已经尝试过了,但是选项里面根本没有JDK1.6.0的选择项供我选择
我参考了其他人的手动安装JDK的帖子
如果要想在这个--config java里面出现1.6.0的选项
需要做一些link,但具体怎么弄我还不清楚。。汗一个
我现在用了个最笨的方法实现了
就是把原来那个指向1.5.0的link改成指向1.6.0目录的链接。。汗。。。
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#5

帖子 zhuqin_83 » 2006-12-07 10:57

How to install JRE v5.0 Update 10

Note: Program included in Automatix2. I you have already used Automatix2, this program may have been installed

* Read #General Notes
* Read #How to add extra repositories

* Navigate to http://java.sun.com/javase/downloads/index.jsp

Choose "Java Runtime Environment (JRE) 5.0 Update 10" and click on "Download"
Accept License Agreement
Download the "Linux self-extracting file"

* Install the required tool :

sudo apt-get install java-package

* Create the Ubuntu package :

fakeroot make-jpkg jre-1_5_0_10-linux-i586.bin

* Install the resulting package :

sudo dpkg -i sun-j2re1.5_1.5.0+update10_i386.deb
不知道这个方法能不能装,把6.0转成deb包。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
xiaolachang
帖子: 23
注册时间: 2006-12-11 7:25

#6

帖子 xiaolachang » 2006-12-11 10:30

谢谢分享,楼主能顺便解释下/usr/lib/jvm/jdk1.6.0/jre/lib/fonts 下的fallback文件夹是什么作用吗?
XMAN
帖子: 57
注册时间: 2006-10-21 4:30

#7

帖子 XMAN » 2006-12-12 9:57

fallback 这个文件夹可以理解为Win下的快捷方式,但功能比快捷方式大多了
你可以这样理解
就是所有的字体在硬盘上只留有一份拷贝
如果你在其他地方用到了这个字体
只要把这个字体的引用/指针传过去就可以了,而不必去把这个字体复制粘贴过来
当然,你把字体复制过来,效果也一样的,呵呵

Java 下面的/jre/fonts/lib 主要是Java程序在渲染字体时,会查找这个文件夹下所有字体的信息
如果没有中文字体,就会造成程序界面上的中文显示为方块
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#8

帖子 zhuqin_83 » 2006-12-12 13:33

java 1.6.0正式版出了,果然字体很漂亮。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
jianyu
帖子: 14
注册时间: 2006-01-17 22:21

#9

帖子 jianyu » 2006-12-12 17:42

lz这个方法对1.5也可以用,不需要等6.0
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#10

帖子 zhuqin_83 » 2006-12-13 2:16

1.5不会照系统字体的渲染。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
platoon
帖子: 33
注册时间: 2005-10-18 3:28

#11

帖子 platoon » 2007-09-02 20:43

请问怎么用文泉驿做为Java程序的中文啊?
头像
PL7s
帖子: 377
注册时间: 2007-03-15 23:44

#12

帖子 PL7s » 2007-11-13 12:51

与11楼同问,求解。
着急呀……55555555555
For the love of PL7s
图片
图片
toohly
帖子: 5
注册时间: 2008-04-24 23:38

#13

帖子 toohly » 2008-04-27 2:36

zhuqin_83 写了:
How to install JRE v5.0 Update 10

Note: Program included in Automatix2. I you have already used Automatix2, this program may have been installed

* Read #General Notes
* Read #How to add extra repositories

* Navigate to http://java.sun.com/javase/downloads/index.jsp

Choose "Java Runtime Environment (JRE) 5.0 Update 10" and click on "Download"
Accept License Agreement
Download the "Linux self-extracting file"

* Install the required tool :

sudo apt-get install java-package

* Create the Ubuntu package :

fakeroot make-jpkg jre-1_5_0_10-linux-i586.bin

* Install the resulting package :

sudo dpkg -i sun-j2re1.5_1.5.0+update10_i386.deb
不知道这个方法能不能装,把6.0转成deb包。

我用这个方法已经成功安装了jdk6u6,在此感谢!
回复