ฉันพยายามเรียกใช้โปรแกรม Java แต่ใช้เขตเวลา GMT เป็นค่าเริ่มต้นแทนที่จะเป็นเขตเวลาที่กำหนดโดยระบบปฏิบัติการ รุ่น JDK ของฉันคือ 1.5 และระบบปฏิบัติการคือ 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 ควรเป็นเขตที่ระบุในระบบปฏิบัติการ (ฉันไม่พบปัญหานี้กับเซิร์ฟเวอร์อื่น ๆ ที่มีรุ่น 1.4 ของ JDK และ Microsoft Server 2003)
ความคิดใด ๆ ที่จะได้รับการชื่นชมอย่างมาก
DateTest
ชั้นเรียนอย่างไร
-Duser.timezone
ค่า