Centos乱码,jar包输出乱码

344 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第16天,点击查看活动详情

问题:

1.本地运行正常,放到Centos运行jar中文输出乱码,输出为???

在这里插入图片描述 程序在本地运行,显示结果如下 在这里插入图片描述

2.使用命令locale查询当前语言包会出现下列的问题

cale: Cannot set LC_CTYPE to default locale: No such file or directory cale: Cannot set xxx to default locale: No such file or directory 在这里插入图片描述

3.是由vi例如vi a.log输入中文乱码,反正就不是自己输入的东西

在这里插入图片描述

方法:

1.修改启动jar包命令,只针对问题一

原本启动jar的命令为

java -jar xxx.jar

修改为

java -Dfile.encoding="UTF-8" -jar xxx.jar

在这里插入图片描述

2.修改设置,都针对

2.1Termux情况(自己的情况)

我这里的是C.UTF-8先进行2.1这一步然后在进行2.2步骤,如果不是直接跳到2.2 在这里插入图片描述

localedef -f UTF-8 -i en_US C.UTF-8

2.2别的情况en_US.UTF-8或者zh_CN.utf8

2.2.1安装语言包

yum install kde-l10n-Chinese -y

2.2.2更新包

yum update

因为有的系统镜像会进行阉割,会少一些东西,所有更新一下子

yum reinstall glibc-common -y

2.2.3设置系统语言包

-f指定设置的字符集 -i 从哪个源

localedef -f UTF-8 -i zh_CN zh_CN.utf8

三.至此完美解决

在这里插入图片描述 jar包的图片就不放了,一样的