GRV中文网 首页 0x Protocol中文网

领取MOLI红包
你的位置: GRV中文网 > 0x Protocol中文网 >

java -jar启动参数设置file.encoding编码,解决中文乱码的问题

发布日期:2025-01-03 19:07    点击次数:198
java -jar启动参数设置file.encoding编码,解决中文乱码 最终解决办法 起因 公司需要基于Jenkins平台上,进行一个批量构建的项目开发,就是个一次性可以调起多个项目的构建,额,先说点题外话,要永远都记得一点,客户都是懒得~ BUG: 使用jenkins-client 请求服务器的域名/job/你的构建项目名/api/json接口获取数据(该接口可以获取某个项目的大部分信息),但坑人的是,本地运行不会乱码,丢到服务器上就尴尬的一批,看图 猫腻 部署到服务器上,**控制台,日志文件,页面上的中文都没有乱码, 直接用浏览器访问上述的jenkins api 接口 也显示正常 ,唯独就是代码里jenkins api 返回的数据有乱码 ** 真的忧桑啊啊啊啊 猜想 是不是对代码里对reponse 的处理出了问题。额,,果然好像是的, 后台查出来 本地 的 Charset.defaultCharset() 返回的是 UTF-8 , 而服务器的是GBK简体中文 ,想哭啊~ 百度了一波 ,查出这个返回值取决于系统的编码环境。 解决思路 **改服务器的编码环境啦啦啦。 ** 尝试解决 (1)设置了JAVA_TOOL_OPTIONS 系统环境变量 启动项目,spring日志里会出现一行 PICK UP JAVA_TOOL_OPTIONS 。。。 则说明生效了。 值得开心的是, 之前那个乱码问题 解决啦 ,解决啦,值得忧桑的是, 框架里的logback 里中文乱码了,心碎 ; jenkins 打包项目 里,涉及到cmd 里的命令 , 参数传递 ,和 日志 输出 ,中文乱码了 看来这方法不靠谱,修改的应该是整个环境的编码,使用还是要慎重!!! (2)最后查到修改某个项目的编码 注意是某个项目的运行环境,不是系统的环境,可以在启动参数的时候设定:java -Dfile.encoding=utf-8 -jar xxx.jar,获取api数据乱码的问题当然是解决了,可控制台的中文依旧乱码。。。 再解决问题:logback.xml指定编码为GBK 。 大胆猜想下,logback 在没有设置编码的情况下,默认应该是跟着当前jvm的编码走的,所以logback的编码也变成了UTF-8 ,而我系统的cmd窗口输出是接受的是中文(取决于系统的编码)。 如下图所示: 最后把logback输出到控制台的编码改成中文的就解决。 要将logback的编码和控制台的编码一致 就这样,最终的问题都解决了~~ 最后还是有个疑问,解决控制台乱码,尝试着修改cmd窗口的的编码改为utf-8 (用chcp 65001 ) 和 该系统保持一致,logback.xml 改成utf-8 编码,并没啥用。苦恼~ 经过这次,个人觉得以后的logback.xml里最好明确下编码格式,和当前整个系统的编码一致,而不是简单的一个项目的运行环境编码。 总结 以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

----------------------------------
栏目分类
相关资讯
  • FEG 过渡到币安智能链 (BSC)

    $FEG 过渡到币安智能链 (BSC)---● 我们正在做什么以及为什么FEG 生态系统正在完全过渡到币安智能链 (BSC),以简化运营并加强我们的基础。管理多...

  • 比特币连创历史新高 市场情绪高涨

    11月26日,加密货币市场持续走低。比特币价格跌至92333美元,跌幅为5.87%;以太坊则跌至3300美元附近,跌幅4.1%。狗狗币也大幅下跌,跌幅达到11%...

  • MOLI万站,正式上线

    MOLI万站,正式上线...

  • 连城集团携手WPS 365助力提升企业效率|wps

    原标题:连城集团携手WPS 365助力提升企业效率工人日报-中工网记者 车辉近日,光伏领域企业连城集团,引入了WPS365,利用其一站式平台,通过全面的文档管理...

  • 马凯:学习十八大精神 开创行政学院科学发展新局面

    马凯在全国行政学院院长会议上强调深入学习贯彻党的十八大精神 努力开创行政学院科学发展新局面12月24日,全国行政学院院长会议在北京召开。新华社记者 谢环驰 摄&...

  • 冒险岛联盟的意志手游

    冒险岛联盟的意志手游是一款由NEXON出品的经典网游冒险岛Online IP正版授权的手游,其延续了冒险岛系列的经典元素和故事背景,为玩家带来了一个全新的冒险世...