Я пытаюсь запустить программу на Java, но по умолчанию используется часовой пояс GMT, а не часовой пояс, определенный ОС. Моя версия JDK - 1.5, а ОС - Windows Server Enterprise (2007).
В Windows указан часовой пояс Central, но когда я запускаю следующую программу, она показывает время по Гринвичу.
import java.util.Calendar;
public class DateTest
{
public static void main(String[] args)
{
Calendar now = Calendar.getInstance();
System.out.println(now.getTimeZone());
System.out.println(now.getTime());
}
}
Вот результат
sun.util.calendar.ZoneInfo[id="GMT",
offset=0,
dstSavings=0,
useDaylight=false,
transitions=0,
lastRule=null]
Mon Mar 22 13:46:45 GMT 2010
Обратите внимание, что я не хочу устанавливать часовой пояс из приложения. Я хочу, чтобы часовой пояс, используемый JVM, был указан в ОС. (Я не нахожу этой проблемы с другими серверами, на которых установлена версия 1.4 JDK и Microsoft Server 2003).
Любые мысли будут высоко оценены.