java - 如何更新 OpenJDK 的时区信息?

标签 java timezone openjdk

如何更新 OpenJDK 的时区信息? Oracle 推出了 tzupdater,但它受其许可的约束,所以我不想使用它。我正在寻找一种开源替代方案,它允许我只更新时区信息而不是整个 JRE。

最佳答案

Azul 最近发布了一个更新 TZ 数据的开源工具:https://www.azul.com/products/open-source-tools/ziupdater-time-zone-tool/

它的工作原理类似于 Oracle tzupdater,但具有开源(GPLv2 许可)许可。

用法:将其应用到您要更新的使用 Java 的 IANA 数据包:

$JAVA_HOME/bin/java -jar ziupdater.jar -l file://[path]/tzdata.tar.gz

通过此命令,您可以将对时区的更改应用到您的 Java 安装。


这是什么意思?

考虑下一种情况:你在一年前安装了 Java,后来某个国家的政府改变了他们的法律,例如取消夏令时。您的 Java 安装还不知道这一点,并且可能会错误地处理该特定区域的时间。更新时区数据可以解决这个问题。

关于java - 如何更新 OpenJDK 的时区信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29101788/

相关文章:

java - 禁用时如何使搜索栏变灰?

java - 类型不匹配 : cannot convert from List<SelectOption<Integer>> to List<SelectOption<String>>?

java - 将时间更改为特定时区的最简单方法

java - 方法未在 Hotspot JVM 中编译的原因

java - Apache Mina 服务器重启 java.net.BindException : Address already in use

java - 将 mac jdk 版本设置为 1.8

java - 具有唯一 ID 的 ArrayBlockingQueue

带有正则表达式的 Java lambda 不产生精确的字符串结果

php - 获取用户时区

java - 使用 AlarmManager 设置不同时区的闹钟