在使用JPowershell遇到中文乱码该怎么排查?

在使用JPowershell遇到中文乱码该怎么排查?

记录一下踩过的坑,需要用到shell执行某些指令,同时要支持Mac和windows,当然JPowershell是windows执行命令的选择;由于在Mac下开发,部署环境是windows,所以遇到了这样的问题。

1、首先排查命令是否能正常执行,到cmd中执行命令,确认命令无误。

2、如果有中文路径,就要考虑编码问题,检查jvm的字符集:

String defaultCharsetName=Charset.defaultCharset().displayName();   
System.out.println("defaultCharsetName:"+defaultCharsetName);

我的在windows下是GBK, 但是我的开发环境是UTF-8, 在UTF-8环境下是一切正常,所以我把windows下的JVM字符集改成UTF-8,一切正常。
只需要加上启动参数即可 -Dfile.encoding=UTF8

windows:

set "JAVA_OPTS=-Dfile.encoding=UTF8"

mac:

JAVA_OPTS="-Dfile.encoding=UTF8"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容