经过9个月的不活动后,我选择更新我的软件,包括从jdk7u17更新到u51。我的一些测试开始失败。这是一个:
public void testSimpleDateFormatDefaultTimeZone() throws ParseException {
TimeZone.setDefault(TimeZone.getTimeZone("Asia/Shanghai"));
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
long millis = sf.parse("1927-12-31 23:54:08").getTime()
- sf.parse("1927-12-31 23:54:07").getTime();
assertEquals(millis, 353000L);
sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
millis = sf.parse("1927-12-31 23:54:08").getTime()
- sf.parse("1927-12-31 23:54:07").getTime();
assertEquals(millis, 353000L);
sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
millis = sf.parse("1927-12-31 23:54:08").getTime()
- sf.parse("1927-12-31 23:54:07").getTime();
assertEquals(millis, 1000L);
}
它传递给u17,并在第一个以u25开头的assertEquals失败。你还好。从u25开始,millis计算为1000。
答案 0 :(得分:0)
正如评论中已经指出的那样,这不是一个错误,而是2年前已经部署到jdk6的未报告的错误修正。