您的位置:首页 > 编程语言 > Java开发

MyEclipse6.0.0控制台乱码解决办法

2010-12-06 10:51 155 查看
今天同事叫我处理Myeclipse控制台的打印信息中文乱码的问题,想一下,其实这个问题冲开始用Myeclipse时,就碰到这个问题的了,只是一直都没有认真地想过怎样解决,人就是这样,不到最后关头,都愿意动一下的,坏习惯。

关于这个问题,可以分析一下,中文乱码往往是由于编码不一致导致的,jboss的日志文件用EditPlus打开,是没有乱码的,只是在Myeclipse中的控制台显示为中文乱码,这样可以判断出,就是jboss日志文件的编码与Myeclipse中的控制台的 编码不一致了。

查看Myeclipse控制台编码:

实践过后,觉得每个应用服务器对应的Myeclipse的控制台应该是不同的。

window-->preferences



这里可以查看到jboss的日志在Myeclipse控制台显示时的编码。

解决方法有两个:

1、将上面第二张图的编码选择utf-8(我们都是用utf-8的)



这种方法治标不治本,很麻烦,因为每次启动时,都需要设置,关闭服务器后,这里又恢复了gbk了,找不到怎样永久地将他设为utf-8.

第二种方法:

这个方法是突然想起的,既然改不了Myeclipse的,那就改jboss呗,就这样,被我找出来了。

修改JBOSSHOME/server/default/conf/的jboss-log4j.xml

具体:

Java代码:

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">

<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>

<param name="Target" value="System.out"/>

<param name="Threshold" value="INFO"/>

<param name="Encoding" value<SPAN style="COLOR: #000000">="<SPAN>UTF-8</SPAN>"/</SPAN>>

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<param name="Target" value="System.out"/>
<param name="Threshold" value="INFO"/>
<param name="Encoding" value="UTF-8"/>


在CONSOLE这个appender中(我的文件是第71行),将UTF-8改为GBK即可。

到此为止,问题得到解决。朦胧中觉得,Myeclipse启动jboss,貌似不调用jboss本身的run.bat、run.conf文件。

原文:http://ruowu.javaeye.com/blog/645873
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: