LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1205|回复: 4

Java程序无法显示和输入中文

[复制链接]
发表于 2009-3-27 23:07:10 | 显示全部楼层 |阅读模式
最近想用Freemind,却发现java程序显示中文为方块,无法用ibus,英文程序运行一开始时能输入运行一段时间(ibus切换到中文输入状态过)就不能了。
另,openJDK和jre怎么都能运行java程序?有区别吗?装哪个呢?
发表于 2009-3-28 03:55:36 | 显示全部楼层
jdk是包括jre的,jdk是开发套件,jre只是运行用。
回复 支持 反对

使用道具 举报

发表于 2009-3-28 21:02:05 | 显示全部楼层
Post by redoak;1966481
最近想用Freemind,却发现java程序显示中文为方块,无法用ibus,英文程序运行一开始时能输入运行一段时间(ibus切换到中文输入状态过)就不能了。
另,openJDK和jre怎么都能运行java程序?有区别吗?装哪个呢?


转自我自己的blog:

Java 1.5中文显示没有问题,但是难以达到antialias的效果,在netbeans下编程看得我眼睛那个难受啊。升级到Java 1.6之后,默认开启了antialias效果,但是中文无法显示,全是方框。

以下是Google到的解决办法:

1. 在java安装目录的fonts文件夹下建一个fallback文件夹。比如在我的opensuse11上是

$ mkdir /usr/java/jre1.6.0_10/lib/fonts/fallback/

2. 链接一个字体到fallback文件夹,比如opensuse自带的方正宋体

$ ln –s /usr/share/fonts/truetype/FZsongTi.ttf /usr/java/jre1.6.0_10/lib/fonts/fallback/

3. 生成对应的fontscale

$ mkfontscale

4. 将fontscale添加到fonts.dir

$ cat fonts.scale >> ../fonts.dir

__________________________________________

01/12/08 update1:

今天发现基于Java 6 webstart的ftp客户端连接不上学校ftp,报以下错误:

java.net.MalformedURLException: unknown protocol: socket

在Sun的论坛上面找到了解决方法。原来在Sun Java 6中,Java Webstart的网络设置默认是采用浏览器的设置。在linux下,应当是与Firefox设置一致。修改Java webstart的网络设置为直接连接后,ftp连接正常。

01/12/08 update2:

今晚发现MATLAB中中文依旧是乱码,经查明原因是MATLAB默认使用的Java虚拟机与我配置过中文的虚拟机版本不一样。在MATLAB中用version -java查得默认的JVM是Sun Java 6 update 1,而我配置的是Sun Java update 10。修改MATLAB_JAVA变量为所需JRE的根目录可以解决上述问题。比如在我机器上是

$ export MATLAB_JAVA=/usr/java/jre1.6.0_10/

为了避免每次都设置,可以将上述语句写入~/.profile(ksh),bash好像是~/.bash_profile。
回复 支持 反对

使用道具 举报

发表于 2009-3-28 23:35:50 | 显示全部楼层
用了上面的方法,还是搞不出中文。
回复 支持 反对

使用道具 举报

发表于 2009-3-29 03:28:23 | 显示全部楼层
Post by xblx;1966861
用了上面的方法,还是搞不出中文。


不可能啊,我用过opensuse/fedora/arch,都是用上面的方法搞定的啊。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表