如何更新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安装尚不知道,并且可能会错误地处理该特定区域的时间。 更新时区数据解决了这个问题。