关于JAVA编译的时间进制问题

今天开发找我看一个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就可以看到解决了这个问题了。

你可能感兴趣的:(java,linux)