Java LocalDate返回随机日期

Java LocalDate返回随机日期,java,localdate,Java,Localdate,我使用下面的代码获取今天的日期,但第一次运行时它给我20190909,第二次运行时给我20190910 我将在2019年9月10日纽约时间晚上8:15运行此程序 LocalDate date = LocalDate.now(ZoneId.of("America/New_York")); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); System.out.println(formatter.format

我使用下面的代码获取今天的日期,但第一次运行时它给我20190909,第二次运行时给我20190910

我将在2019年9月10日纽约时间晚上8:15运行此程序

LocalDate date = LocalDate.now(ZoneId.of("America/New_York"));
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
System.out.println(formatter.format(date));
这在我的本地机器和uat服务器上运行良好,只是在qa服务器上出现故障。
我验证了服务器的时间和它的性能。

这就像预期的一样正常工作,我已经修复了一些其他的lib问题


谢谢

如果您现在运行它,它会返回什么?更改您的模式以显示时间,以便了解发生了什么以及原因。您的计算机时钟设置是否正确?您的计算机的时区设置是什么?你的JVM呢?第三次跑步你得到了什么?我刚刚运行了您的代码(进行了必要的更正),并连续四次获得了
20190911
,因此似乎无法复制。我提供了时区,因此系统时间或时区会很重要?我认为
LocalDate.now(String)
方法不存在。你是说现在(美国/纽约地区)的本地日期吗?还是我错过了什么?@Abhishek
.now(Zone)
实现是一行:
立即返回(Clock.system(Zone)),所以它确实使用系统时间。