有时在linux下运行java 的小应用程序,这个小应用的界面可能是用Swing搞的,也可能是用awt搞的很遗憾的是,这样的程序就出现了乱码,一般会出现菜单中的中文显示乱码,

    原因分析:jvm是没有自己的中文字库的,它要依赖于操作系统的字库来显示中文,而各个linux版本的字库的路径是不同的,所以jvm找不到用来显示中文的字库,

    解决方法:就是让jvm找到所在linux操作系统所带的字库,

    1).在jdk的安装目录下面/java/jre/lib/fonts/ 执行mkdir fallback //只能是fallback这个文件夹名,其他的不行,这个我也不知道是为什么?

    2).找到操作系统的字库,一般是在/usr/share/fonts/下面,有一个文件件有一堆*.ttf的字库文件,可以执行find -name *.ttf 查找一下,

 有的是在chinese/TrueType/*.ttf 有的是在/zh_CN/font-chinese-zh/*.ttf 这个应该很容易找,应该明白我们找的是中文字库,这个都懂的!

    3).创建连接,例如我找的在/zh_CN/font-chinese-zh/*.ttf 下面,则执行 ln -s ln -s /usr/share/fonts/zh_CN/font-chinese-zh/*.ttf /opt/IBM/WebSphere/AppServer/java/jre/lib/fonts/fallback  重新启动一下你的小应用你会发现现在它不乱了。



Logo

更多推荐