mac下设置eclipse编码

背景

为了便于交流维护,我们的testcase都是用中文命名的,例如:

public void test_正常用户登录_登录成功() {
    // do sth
}

一个重要的需求就是,针对单个testcase的debug,具体操作就是,选择这个case--右键--runasjunit/debugasjunit。工程本身是gbk编码,在windows+eclipse环境下,可以直接运行,而在mac+eclipse环境下,针对单个casedebug会由于乱码而启动失败,现在的解决方案是整个类一起运行。

解决方案

其实mac+eclipse的乱码问题比较多,完整解决eclipse乱码问题的过程记录如下。

1.修改eclipse.app/Contents/Info.plist

添加以下start/end中间的内容。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">

<dict>
    <!-- start -->
    <key>LSEnvironment</key>  
    <dict>  
        <key>JAVA_TOOL_OPTIONS</key>  
        <string>-Dfile.encoding=UTF-8</string>  
        <key>LANG</key>  
        <string>zh_CN.UTF-8</string>  
    </dict> 
    <!-- end -->
    <key>CFBundleExecutable</key>
        <string>eclipse</string>
    ....

2.修改eclipse.app/Contents/MacOS/eclipse.ini

在-vmargs下面添加一行

-Dfile.encoding=UTF-8

3.重启eclipse生效

引用
如果不生效,可以执行命令
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -v -f /Applications/eclipse/eclipse.app
如果继续不生效,可以把eclipse所在文件夹改名,再次启动

mac

相关推荐