Java 프로그램을 실행하려고하는데 OS 정의 시간대 대신 기본 GMT 시간대를 사용하고 있습니다. JDK 버전은 1.5이고 OS는 Windows Server Enterprise (2007)입니다.
Windows에는 중앙 시간대가 지정되어 있지만 다음 프로그램을 실행하면 GMT 시간이 표시됩니다.
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에서 사용하는 시간대가 OS에 지정된 시간대 여야합니다. (JDK 버전 1.4와 Microsoft Server 2003이 설치된 다른 서버에서는이 문제를 찾을 수 없습니다).
어떤 생각이라도 높이 평가할 것입니다.
DateTest
클래스를?
-Duser.timezone
값을 전달할 수있는 쉘 / 배치 스크립트를 통해 실행을 배제하고 싶었습니다