一切都是windows的控制台默认编码GBK问题

情景:

使用jenkins构建,console 输出的中文乱码。代码编码格式是utf-8,因为Jenkins会默认读取当前系统的编码格式,导致构建日志乱码和selenium自动化测试输入的中文乱码。

控制台输出乱码

摸索

不能忍,果断百度一下,按照设置全局配置那里设置LANG :zn_CH.utf-8 无效。

在jenkins下的jenkins.xml设置什么启动为utf-8也是无效。

但是查找资料期间发现,jenkins系统管理的系统信息 

想到另一台linux下,未发现该问题,上去看看,里面有一个(大约是第三行)file.encoding UTF-8,而我本地的windows则是file.encoding GBK.

再往下拉,仔细看还有一个sun.jnu.encoding UTF-8 
而我本地也是sun.jnu.encoding GBK

我觉得就是这里的问题啊。

这个是java层面的编码问题,所以在jenkins 里设置半天并没效果。 
查了下java修改file.enciding UTF-8的方法。

在系统变量里添加启动参数: 
1.打开环境变量设置 
2.注意是新建,不是在什么path中新加, 
直接新建一个变量名为JAVA_TOOL_OPTIONS 
变量值为-Dfile.encoding=UTF-8 
保存并重启jenkins。

再次查看我们的“系统管理”-->“系统信息”发现已经是UTF-8 了。

等等,你可能说,那个sun.jnu.encoding还没改呢。

那这俩有什么区别呢

file.encoding主要管理的是文件中的编码 
sun.jnu.encoding 主要负责文件名类的编码

PS:所以这里也提示我们,如果依赖java或者其他一些环境的软件,命名及其安装路径尽量国际化一点,毕竟中文很多时候出现错误十分的恼火。

sun.jnu.encoding 的修改还没找到方法,如知道,请告知我。


重新构建一下,一半喜乐,一半忧伤。我程序中输出的中文字符正常显示了。但是,系统提示的那个“错误,该进程没有找到”的已经变成了乱码。WTF,其实不难理解,因为那个信息是windows反馈给我们的,不在我们代码中,那编码模式必然是默认的GBK,这里实在是不知道怎么去控制了。尴尬,难道就不能两全吗?!

搞不动了,linux下就没这么妖了,因为默认的就都是utf-8。

参考:http://blog.csdn.net/sinat_21302587/article/details/68061204

Jenkins maven 构建乱码,修改file.encoding系统变量编码为UTF-8的更多相关文章

  1. 解决maven打包编译出现File encoding has not been set问题

    maven打包编译时后台一直输出警告信息 [WARNING] File encoding has not been set, using platform encoding GBK, i.e. bui ...

  2. Jenkins+Maven+Sonar系统持续集成环境部署以及配置

    一.Jenkins介绍以及安装 什么是持续集成?   随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Ag ...

  3. Jenkins日常运维笔记-重启数据覆盖问题、迁移、基于java代码发版(maven构建)

    之前在公司机房部署了一套jenkins环境,现需要迁移至IDC机房服务器上,迁移过程中记录了一些细节:1)jenkins默认的主目录放在当前用户家目录路径下的.jenkins目录中.如jenkins使 ...

  4. Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建

    详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...

  5. 解决jenkins slave 中文乱码 encoding=ANSI_X3.4-1968

    jenkins配置slave进行构建时,发现slave构建的控制台输入中文乱码,查看master,slave的jenkins系统信息 file.encoding和sun.jnu.encoding都没有 ...

  6. [原]Jenkins(七)---jenkins项目编译测试发布由maven构建的web项目

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...

  7. jvm file.encoding 属性引起的storm/hbase乱码

    1. 问题 今天为storm程序添加了一个计算bolt,上线后正常,结果发现之前的另一个bolt在将中文插入到hbase中后查询出来乱码.其中字符串是以UTF-8编码的url加密串,然后我使用的URL ...

  8. dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器

    # dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...

  9. CentOS6.8下Jenkins+maven+tomcat+git+shell自动构建、部署web应用环境的搭建

    参考资料:http://www.cnblogs.com/cheng95/p/6542036.html http://www.cnblogs.com/software-test/p/7068278.ht ...

随机推荐

  1. 《TCP/IP 详解 卷1:协议》第 4 章:地址解析协议

    链路层是经过单一链路通信的协议层. IP 网络层协议的设计目标是为跨越不同物理类型的.多节点网络的 packet ,提供主机寻址.路由操作. 在其中要注意的一点是:网络层使用的地址和底层网络硬件使用的 ...

  2. iOS- 多线程中如何去保证线程安全

    一.前言 前段时间看了几个开源项目,发现他们保持线程同步的方式各不相同,有@synchronized.NSLock.dispatch_semaphore.NSCondition.pthread_mut ...

  3. iOS完整学习路线图-对知识的回顾/整理

    第一阶段:语言基础 Mac系统使用.常用UNIX指令.C语言.Objective-C语言.Foundation框架. 第二阶段:iOS基础 AppDelegate & UIApplicatio ...

  4. eureka集群高可用配置

    譬如eureka.client.register-with-eureka和fetch-registry是否要配置,配不配区别在哪里:eureka的客户端添加service-url时,是不是需要把所有的 ...

  5. HHVM 3.0 发布,执行 PHP 的虚拟机

    HHVM 详细介绍 HipHop VM(HHVM)是Facebook推出的用来执行PHP代码的虚拟机,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点. ...

  6. BZOJ2186 SDOI2008沙拉公主的困惑(数论)

    由于n!是m!的倍数,而对于每个与m!互质且小于m!的数x,x+m!.x+2*m!……也与其互质,所以答案即为(n!/m!)*φ(m!). φ(m!)=m!*∏(1-1/pi).其中的pi即为1~m中 ...

  7. C 输入 & 输出——Day03

    当我们提到输入时,这意味着要向程序填充一些数据.输入可以是以文件的形式或从命令行中进行.C 语言提供了一系列内置的函数来读取给定的输入,并根据需要填充到程序中. 当我们提到输出时,这意味着要在屏幕上. ...

  8. 1.红黑树和自平衡二叉(查找)树区别 2.红黑树与B树的区别

    1.红黑树和自平衡二叉(查找)树区别 1.红黑树放弃了追求完全平衡,追求大致平衡,在与平衡二叉树的时间复杂度相差不大的情况下,保证每次插入最多只需要三次旋转就能达到平衡,实现起来也更为简单. 2.平衡 ...

  9. 【转载】dfs序七个经典问题

    作者:weeping 出处:www.cnblogs.com/weeping/ 原文链接 https://www.cnblogs.com/weeping/p/6847112.html 参考自:<数 ...

  10. BZOJ3672 [Noi2014]购票 【点分治 + 斜率优化】

    题目链接 BZOJ3672 题解 如果暂时不管\(l[i]\)的限制,并假使这是一条链 设\(f[i]\)表示\(i\)节点的最优答案,我们容易得到\(dp\)方程 \[f[i] = min\{f[j ...