问题:spark 1.6 跑在centos7 的一个docker 中,发现 自己写的 java (由maven打包的 jar )程序 控制台乱码
解决思路:
排除问题: 已确认了maven打包的字符集是utf-8
1.将jar在 centos7 以java 的方式 运行 中文不乱码
2.将jar 在docker中 以java的方式 运行 中文乱码
加入参数 ,就不乱码
-Dfile.encoding = utf-8
因此排除 maven 打包的没问题,是docker字符编码的问题
解决办法:
spark submit 时添加下面参数,完美解决
--driver-java-options " -Dfile.encoding=utf-8"
完整命令
spark-submit --driver-java-options " -Dfile.encoding=utf-8" --class com.misrobot.bigdata.ets.ee
/usr/local/spark/task/java/misrobot-bigdata-1.0-SNAPSHOT.jar
网友评论