Gradle项目Cygwin输出中文乱码的解决办法

最近将Android项目使用的gradle版本从3.5升级到了4.4,发现在cygwin中输出的中文变成乱码了,有点影响心情。在网上搜索一番后,终于找到了解决方案。

乱码原因:Windows平台下中文默认编码是GBK,Cygwin控制台编码格式设置为UTF-8,编码格式不一致导致出现乱码。解决方案就是想办法使用 UTF-8格式的编码进行编译。

gradle官方文档推荐的设置编码格式为UTF-8的方式如下:

tasks.withType(JavaCompile) {  
    options.encoding = "UTF-8"  
}

但是我的Android项目升级前在Cygwin中正常输出中文,升级后变成乱码了。于是就想办法去设置jvm的编码为UTF-8。

在gradlew文件中找到了相关配置

# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS="-Dfile.encoding=UTF-8"

设置后正常输出中文。

在新建的gradle项目中,修改gradlew文件,并在build.gradle中输出中文进行测试,可以正常输出中文。

task testPrint {
	println("hello world 你好")
}

tasks.withType(JavaCompile) {  
    options.encoding = "UTF-8"  
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值