在以前用Ubuntu 8.10的时候装基于Java的桌面应用程序时,经常遇到的一个问题是,界面的中文显示成方块或乱码,而英文正常。这个问题可以通过一个很简单的方法解决。运行一下代码
cd /usr/lib/jvm/你的jvm/jre/lib/fonts
sudo mkdir fallback && sudo ln -s /usr/lib/fonts/truetype/wqy/wqy-zenhei.ttc fallback/wqy-zenhei.ttf
通常情况下,使用以上方法就可以解决汉字是乱码和方块的问题。但是,当我升级到Ubuntu 9.10后这个方法没有解决我的问题。我像往常一样,安装好SmartSVN,发现中文乱码,本以为可以很轻松的搞定,但是不论我在/usr/lib/jvm下的哪个目录下按以上的方法,都无法解决问题,尝试过多次,均以失败告终,我遇到的问题如下图
通过上图可以看到,其实中文并没有乱码,隐约可以看到是中文,只不过渲染得有问题。
我尝试Google之,发现竟然没有一个类似的,能搜索到的全是文章开头描述的那种情况,而像我现在遇到的这种情况,搜索不到。有点想放弃解决这个问题的念头,因为就这种情况也坚持用了一两个礼拜了。最近刚接触了IRC(一个国外用得非常广泛的即时交流工具,可以理解为国外的“QQ群”,就是一大群人在一个聊天室里讨论问题),出于好奇进入了Ubuntu官方的IRC频道,当时就一个目的,厚着脸皮在这学习英语(我的英语相当烂,目前自我感觉是这样的,正常交流也是个问题,一句普通的话可能得想半天),就是进去瞎逛,脑袋里想着,总得说点什么,感受感受吧,于是找我现在用的Ubuntu的问题。第一个问题我发出去没多久,马上就有一个素不相识的人询问我问题详情,然后就是教我怎么做可能解决问题,虽然最终这个问题没有解决,但是给我留下了一个很好的印象,大家很友好,IRC秩序也不错,交流技术的气氛很浓,互帮互助。后来我在用SmartSVN的时候想起了我的这个SmartSVN中文显示成上图那个样子的问题,于是马上就想到了到IRC上来问。没想到不到10分钟的时候(中间还由于我描述的情况有误,绕了个弯路),解决了这个我两个礼拜一直容忍着的问题,还是跟第一次一样,问题发出去不久,马上就有一朋友询问问题详情,接下去告诉我尝试做什么样的操作就可以解决这个问题。废话了那么多,貌似有些跑题,以下是解决的方法
sudo update-java-alternatives -s java-6-sun
这句命令的意思是,将默认的jvm改为java-6-sun,之前我装的jvm是java-6-openjdk的,可能问题就出在jvm的版本上。不清楚这个会不会对其它java程序产生影响,不过这已经暂时解决了我SmartSVN中中文无法查看的问题。
BTW:领略到社区的威力了。