1

我有一台 windows server 2003 机器,安装在它上面,一个名为“Cisco Voice Portal”的 cisco 产品,该产品在 JRE 版本1_5_0_12上运行。通过以下方式获取日期/时间:

new Date();

或者

Calendar.getInstance();

日期总是比系统日期早一小时。起初,我认为这是时区不匹配,但这是打印日期对象的输出:

Fri Oct 08 02:36:38 EST 2010

并且系统时钟也在EST时区。这意味着时区是相同的。系统日期是正确的,系统机器是澳大利亚悉尼。有什么建议可以解决这个问题吗?提前致谢。

4

2 回答 2

2

首先,JRE 有自己的时区信息数据库,它可能与您的本地平台上的数据库不同,也可能不同。

您可能遇到的另一个问题是,在启动 JRE 时,您可能指定了与主机平台不同的语言环境或时区,这也会导致这种行为。

PS:您可能想阅读 Oracle(例如 Sun)的这个FAQ 条目,了解平台和 JVM 时区如何(不)相关。

于 2010-10-18T10:58:50.853 回答
1

您是否尝试升级到更新的 JRE 版本?请参阅错误6595137,它似乎已在 1.5.0_13 中修复。

于 2010-10-18T11:02:04.687 回答