Pab*_*ruz 5 java linux timezone
我有一个配置了两个用户的linux盒子.我也有这段Java代码:
long time = System.currentTimeMillis();
String millis = Long.toString(time);
Date date = new Date(time);
System.out.println("Current time in milliseconds = " + millis + " => " + date.toString());
TimeZone tz = TimeZone.getDefault();
System.out.println("Current time zone: " + TimeZone.getDefault().getID());
Run Code Online (Sandbox Code Playgroud)
如果我date在bash上运行,我对两个用户都有相同的结果:
用户1:
$ date
Fri Mar 22 10:02:58 PYST 2013
Run Code Online (Sandbox Code Playgroud)
用户2:
$ date
Fri Mar 22 10:03:22 PYST 2013
Run Code Online (Sandbox Code Playgroud)
但是,如果我运行相同的java代码,我有:
用户1:
$ java TimeTest
Current time in milliseconds = 1363957432669 => Fri Mar 22 10:03:52 PYST 2013
Current time zone: America/Asuncion
Run Code Online (Sandbox Code Playgroud)
用户2:
$ java TimeTest
Current time in milliseconds = 1363957456954 => Fri Mar 22 13:04:16 GMT 2013
Current time zone: GMT
Run Code Online (Sandbox Code Playgroud)
所以我想这与为每个用户配置java的方式有关.
我检查了一个TZ定义的环境变量,但是没有 TZ为任何用户定义.
有关为什么我TimeZone.getDefault()在同一个Linux机器上为不同用户获取不同值的任何想法?
JVM:
$ java -version
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)
Run Code Online (Sandbox Code Playgroud)
发行版:
$ cat /etc/issue
Red Hat Enterprise Linux Server release 5.8 (Tikanga)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2140 次 |
| 最近记录: |