今天开发找我看一个JAVA编译的问题,也就是编译后的时间结果是12小时进制的,不是需求的24小时进制
而我一开始怀疑是否和硬件时间有关,因为一开始就把虚拟机的时间改为24小时进制的了,且是东8区的,查看结果如下
[root@localhost ~]# date
Mon May 18 16:33:46 CST 2020
而我在该虚拟机的物理实体机上编译java文件,却是正常的(实体机的硬件时间本来就是12小时进制的),所以和这个硬件时间没什么关系。
接下来就是排查时区的问题了,使用tzselect命令去选择时区(顺序:5》9》1》1)即:Asia/Shanghai
最重要的是创建或修改 /etc/localtime的软连接,原来是这样的:
[root@oracle app]# ll /etc/localtime
lrwxrwxrwx. 1 root root 38 Jul 29 2019 /etc/localtime -> ../usr/share/zoneinfo/America/New_York
要修改成如下:
[root@oracle app]# ll /etc/localtime
lrwxrwxrwx. 1 root root 33 May 18 16:22 /etc/localtime -> /usr/share/zoneinfo/Asia/Shanghai
这个不需要重启,重新运行java就可以看到解决了这个问题了。