近来遇到一个很神奇的问题,同样的代码在别人机器跑的很好,在我的电脑上就不行。于是四处查找原因。
最后终于查出原因了,顺便与大家分享下。
原因:我的电脑是64位win7 ,今年新出的本本。三个版本的jdk下测试结果如下:
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class test {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
System.out.println(c.getTimeZone());
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String tmpDate = df.format(date);
System.out.println(tmpDate);
//JDK1.5.0.06
sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]
2011-06-26 11:41:52 时间错误了 应该是2011-06-26 19:41:52 差 了8个小时
//JDK1.5.0.22 X64
sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null]
2011-06-26 19:39:24
//JDK1.5.0.22 X86
sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null]
2011-06-26 19:40:14
}
}
另外,如果是 jdk 1.5 的话,那用 java -version 看一下 java 的版本号,根据 Sun 提供的资料,对应于 Windows 系统,JDK
1.5 最小的版本号:
Windows 7, Windows 2008 R2, Windows Vista SP2, Windows 2008
SP2 需要 jdk1.5.0_21 及以后版本
Windows 2008 需要 1.5.0_19 及以后版本
Windows Vista 需要
1.5.0_14 及以后版本
JDK 1.6 系统支持最小的版本号
Windows 7 需要 1.6.0_14
及以后版本
Windows Server 2008 R2 需要 1.6.0_16 及以后版本
解决方案:
1. 暂时解决的办法是:在jvm参数设置 -Duser.timezone=Asia/Shanghai
2. 更换jdk版本为大于jdk1.5.0_21
3. 修改注册表 参考http://blog.csdn.net/Nonetracer/archive/2010/07/07/5718796.aspx
分享到:
相关推荐
为什么xp下能取到时区儿而win7下取不到呢? 搜索一下,到SUN论坛,发现SUN提到了这个bug,(http://java.sun.com/javase/tzupdater_README.html)而且发布了一个tzupdater。 按照使用说明下载、运行,再试,还是不行...
在本主题中,我们聚焦于"WIN7 64位JRE",这指的是专为Windows 7 64位操作系统设计的Java运行环境。 首先,我们要理解的是64位操作系统与32位操作系统的区别。64位系统能够处理更大的内存地址空间,允许程序访问超过...
"windows-i586.exe"表明这是一个适用于32位Windows系统的安装程序,对于那些仍在使用32位Win7系统的用户来说,这是一个重要的信息。 在安装Java JRE 6u21时,用户需要遵循以下步骤: 1. 下载:首先,用户需要从...
在Windows 7环境下安装Android模拟器以及进行Java调试是一项基础但至关重要的任务,对于开发者来说,尤其在没有实际设备的情况下,模拟器是测试应用的重要工具。本文将详细介绍整个安装和配置过程。 首先,我们需要...
在这个压缩包中,包含的资源适用于Win64平台,且支持Java和C#两种编程语言。 1. **SDK介绍** 海康安防系统SDK(Software Development Kit)是一套用于开发海康安防产品的应用程序的工具集,它提供了丰富的API函数...
Java JDK7是Java Development Kit的第七个主要版本,专为Windows操作系统设计。它包含了Java运行环境(JRE)以及用于开发和部署Java应用程序所需的编译器、调试工具和其他实用工具。JDK7的发布对Java社区具有重大...
提供的两个文件"IE10_for_Win7_x64.exe"和"IE10-Win7-X86.exe"分别对应64位和32位版本的IE10。用户应根据自己的操作系统类型选择合适的版本进行安装。对于64位的Windows 7用户,应选择"IE10_for_Win7_x64.exe";对于...
Windows 11 安卓子系统是微软在新一代操作系统中引入的一项创新功能,它允许用户在Windows 11环境中直接运行安卓应用程序。20220211更新的Win11安卓子系统旨在提供更稳定、高效和兼容的安卓应用体验。下面将详细介绍...
7. **安装时间** - 安装时间取决于计算机性能,通常需要几分钟到十几分钟。 **配置服务** 安装完成后,需要对Domino服务器进行配置,以确保其能正常启动和运行: 1. **启动方式** - 可以选择将Domino服务器设置为...
这个压缩包包含了Eclipse IDE的64位版本,特别适合在64位Windows操作系统上运行,能够充分利用系统的资源,提高开发效率。 安装教程通常会涵盖以下几个关键步骤: 1. **下载Eclipse**: 提供的压缩包解决了从官方...
安装时间取决于计算机性能,可能需要几分钟到十几分钟不等。 安装完成后,需要配置服务器以确保其正常运行: 1. 设置Domino服务器的启动方式。如果服务器需要在系统启动时自动运行,应将其设置为Windows Service。...
在Windows 8环境下安装Oracle 11g,除了遵循上述步骤,还要注意系统兼容性问题,如.NET Framework、JRE(Java Runtime Environment)等依赖软件的版本要求,以及可能需要关闭UAC(用户账户控制)以降低安装难度。...
Windows系统下,可以使用内置的资源管理器或第三方解压软件完成此操作。 2. **启动安装程序**:解压后,你会看到一个名为"eclipse-inst-win64.exe"的可执行文件。双击该文件启动Eclipse安装向导。 3. **选择安装类型...
在安装cronolog-1.6.2-14.el7.x86_64.rpm文件时,通常会使用RPM包管理器,如`yum`或`dnf`,这取决于你的RHEL 7系统中使用的是哪个。命令可能是: ```bash sudo rpm -Uvh cronolog-1.6.2-14.el7.x86_64.rpm ``` ...
描述中提到"可能只支持XP,不支持win7",这暗示该工具可能存在兼容性问题,可能是因为它依赖于Windows XP系统的一些特定API或者特性,尚未更新以适应更新的操作系统版本,如Windows 7。 在IT安全领域,了解和使用...
解决方法:Win XP的“预读取”技术这种最佳化技术也被用到了应用程序上,系统对每一个应用程序的前几次启动情况进行分析,然后新增一个描述套用需求的虚拟“内存映像”,并把这些信息储存到WindowsPrefetch文件夹。...
确保选择与你计算机硬件架构匹配的版本,例如64位(win64)或32位(win32)。 2. **运行安装器**:双击下载的`eclipse-inst-win64.exe`文件,启动安装向导。这个向导会引导你完成整个安装过程。 3. **选择安装类型...
� Android 更像一款桌面环境为 Java 的 Linux 操作系统。有助于 Google 实现其 " 随时随地为每个人提供信 息 " 的企业战略。 HTC HTC HTC HTC Dream/G1 Dream/G1 Dream/G1 Dream/G1 具体配置 硬件 3.17 英寸 HVGA ...