REST API'mdaki bazı tarihleri temsil etmek için JodaTime'ın DateTimeFormat kullanıyorum. 2016/04/14 08:50:31 ESTJodaTime'ın farklı ortamlarda garip davranışı
sorun şudur:
kullanıyorum biçim
DateTimeFormat.forPattern("MM/dd/yyyy HH:mm:ss z").withZone(DateTimeZone.forID("EST"));
Yani benim tarihleri örneğin olarak temsil edilmesini istiyoruz olduğu Üretimimde kodumu çalıştırdığımda iyi çalışır (tarih yukarıdaki örnekle temsil edilir), ancak yerel makinemde veya aşamada çalıştırdığımda, şu şekilde gösterilir:
04/14/2016 09: 05:53 -05: 00
Her iki ortamda da aynı kodu kullanıyorum. Ayrıca, hem Evreleme hem de Üretim Amazon'da çalışıyor ve sunucu tarihinin eşit olarak ayarlandığını biliyorum, bu yüzden bu sorunu nasıl çözeceğimi bilmiyorum.
public static void main(String[] args) {
DateTimeFormatter format = DateTimeFormat.forPattern("MM/dd/yyyy HH:mm:ss z")
.withZone(DateTimeZone.forID("UTC"));
System.out.println(new DateTime(new Date()).toString(format));
}
dip not:
benim sorun göstermek ve çoğaltmak basit Ana yaptık Java 8 ve JodaTime 2.7
Yerel testinizin biçiminde Z sermayesi kullanmadığınızdan% 100 emin misiniz? Çünkü çıktınızı verilen örnekle çoğalayamıyorum. – dambros
Bundan% 100 eminim. JodaTime 2.7 kullanıyorum –
Joda bir seçenek sizin için güncelleniyor mu? Sadece 2.7 ile denedim ve gerçekten işe yaramıyor. Daha önce 2.9.3 ile çoğalamadım. – dambros