我最近从 10.10 升级到 ubuntu 12.04。从那时起,我在使用 openjdk 6 的 TimeZone 类中得到 NullPointerException。
TimeZone.getTimeZone("GMT-0:00");
openjdk 7 也不例外,我的同事也没有 openjdk6 例外。所以看起来我缺少一些必要的库。
此外,这很好用:TimeZone.getTimeZone("GMT")
在我的机器上使用 openjdk 6
我最近从 10.10 升级到 ubuntu 12.04。从那时起,我在使用 openjdk 6 的 TimeZone 类中得到 NullPointerException。
TimeZone.getTimeZone("GMT-0:00");
openjdk 7 也不例外,我的同事也没有 openjdk6 例外。所以看起来我缺少一些必要的库。
此外,这很好用:TimeZone.getTimeZone("GMT")
在我的机器上使用 openjdk 6
我能够通过完全删除 tzdata-java 包并重新安装来解决它。请注意,还删除了一堆 openjdk6 包。(我已经尝试过完全删除并重新安装 openjdk6 软件包,但没有运气)。
昨天我在 DbVisualizer 上遇到了类似的问题(启动时 NPE),结果发现http://www.dbvis.com/forum/thread.jspa?messageID=14474上的论坛帖子有解决方案。
尝试运行此命令以查看 Java 时区文件的位置:
locate GMT | grep java | grep zi
就我而言,/usr/share/javazi 的内容是指向实际文件的符号链接,其中许多符号链接已损坏。我只是将我的时区的符号链接重新指向新的文件位置,这让 DbViz 为我工作。也许类似的东西对你有用。