日期:2014-05-16 浏览次数:20663 次
问题描述:
????? 一时心血来潮随便写了个AWT程序部署在Linux下,想测试一下JAVA的跨平台能力,结果发现功能一切正常,但中文都显示成了一个个的方块。
问题解决:
????? 一开始以为是系统语言设置问题,输入命令:
????? #locale -a??????? //查看系统支持语言
????? #LANG="zh_CN.utf8"???? //设置系统语言
????? 设置完成后再次运行程序,发现问题依旧如故,这次是真的一点头绪也没有了,再次去网上搜索发现可能是JAVA JVM中字体支持过少的缘故,于是找到<JAVA_HOME>/jre/lib/fonts目录,执行:
????? #mkdir fallback
????? 再找到Linux系统下的字体文件存放位置/usr/share/fonts/truetype/,我这里是OpenSUSE 11.2,其他的系统可能位置不太一样,因为不清楚具体需要哪种字体文件,所以将目录下的所有字体文件全部拷到刚才建立的fallback目录中,然后再次在终端中运行程序,终于看到的了熟悉的中文界面。
注:此方法仅支持JDK1.5及以后版本,JDK1.4需要修改JAVA JVM的字体配置文件,在此处就不多赘述了。