喬達時間硬編碼在不同時區不起作用。我通過以下方式對Joda時間進行了硬編碼,以便我可以爲我的Junit測試用例提供靜態日期時間。喬達時間硬編碼在不同時區不起作用
LocalDateTime fixedDateTime = new LocalDateTime(year, monthOfYear, dayOfMonth, hourOfDay, minuteOfHour, secondOfMinute, 0, ISOChronology.getInstance("Canada/Pacific")));
DateTimeUtils.setCurrentMillisFixed(fixedDateTime.toDate().getTime());
但是當你試圖讓當前日期與時間使用下面的API,它可能不會如上述導致確切的固定日期。
DateTime.now(DateTimeZone.forID("Canada/Pacific"));
這個日期甚至可以提前一天或第二天就取決於哪個時區正在運行的代碼固定日期。 這可能令人沮喪,因爲您的測試用例將在本地通過,但是在部署到虛擬雲計算機時,它可能會使這些虛擬雲計算機上的測試用例失敗,因爲它們可能位於完全不同的時區。
很難在不知道你在等什麼情況下期望發生的事情的情況下給出答案。 –
你可能可以通過將「不起作用」改爲「我無法讓它工作」 –