java运行环境时间与实际时间不一致的解决方法

    最近搭建一个新的运行环境, java运行时的时间比实际时间晚了12h, 显示服务器系统时间正常, 百思不得其解

    在网上查了大多数遇到jvm时间与时间不一致的情况都是相差8h, 这是东八区和标准时间的缘故

    打印时区, 发现系统用的是est 时区 (EST eastern standard time (美国)东部标准时间  慢北京时间 13个小时。)

    解决方案:

        方法一:JVM运行时增加参数,指定时区 -D user.timezone=GMT+08

        方法二:直接在程序中设置时区。System.setProperty(“user.timezone”,”GMT +08″);

        方法三:直接加上28800就好了(8hours*60min*60sec=28800)


    我采用了方法一: 在tomcat 启动的时候,在catalina.sh 文件中添加如下代码

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8  -Duser.timezone=GMT+08"

重启Tomcat后正常.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容