u011298788
你我多虚伪
采纳率0%
2016-12-01 04:46 阅读 4.6k

JDK1.8获取时间比系统时间少13小时(获取时区出错导致)

系统为:Ubuntu14.04,安装jdk1.8后,JDK1.8获取时间比系统时间少13小时,不止如何配置

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • u011298788 你我多虚伪 2016-12-01 05:44

    java获取的时间不对(少12小时),导致tomcat8的Log记录的东西,时间也对不上

    根本原因,JVM获取到的时区对不上

    一、修改jvm获取时区的配置文件(基于Ubuntu14.04 ,JDK8)

    解决办法:

    修改 /etc/timezone文件(sudo vi /etc/timezone)
    
    内容为:Asia/Shanghai 
    

    二、在tomcat上解决(不是根本的解决办法)
    可以在tomcat8上设置来解决,只可以解决在tomcat8上面跑的java程序,生成的log日期是对的。

    在tomcat8/bin/catalina.sh,在开头处,增加以下代码即可。
    JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=GBK -Duser.timezone=GMT+08"

    参考文章:http://blog.csdn.net/zishan007/article/details/12993211

    点赞 评论 复制链接分享
  • dcxy0 Q544471255 2016-12-01 07:15

    在Java获取时区的时候,可以先对时区进行设置,不过还是建议你按照楼上的方式对JVM时区进行调整。

    点赞 评论 复制链接分享

相关推荐