Java 在Linux机器上获取JVM时区

Java 在Linux机器上获取JVM时区,java,linux,jvm,Java,Linux,Jvm,是否可以在Linux中使用命令在JVM中设置时区?我正试图从一个无法部署任何代码进行检查的生产框中获取此信息。否。这是不可能的。在linux中,无法使用命令在JVM中获取设置的时间。有关更多信息,请在命令提示符或控制台中运行“java”命令,您将看到JVM可以直接接收哪些命令。JVM通过JMX提供了一些有关应用程序的统计信息,有些默认情况下是可用的,因此您很可能也可以从应用程序中检索这些命令。您可以使用jconsole工具连接到Java应用程序并读取这些值。我不认为时钟时间是其中之一,但您可以检

是否可以在Linux中使用命令在JVM中设置时区?我正试图从一个无法部署任何代码进行检查的生产框中获取此信息。

否。这是不可能的。在linux中,无法使用命令在JVM中获取设置的时间。有关更多信息,请在命令提示符或控制台中运行“java”命令,您将看到JVM可以直接接收哪些命令。JVM通过JMX提供了一些有关应用程序的统计信息,有些默认情况下是可用的,因此您很可能也可以从应用程序中检索这些命令。您可以使用
jconsole
工具连接到Java应用程序并读取这些值。我不认为时钟时间是其中之一,但您可以检查应用程序的启动时间和正常运行时间。将其中一个添加到另一个中,可以获得应用程序看到的当前时间。您可以在
jconsole
的“MBeans”选项卡中找到这两个值:在左侧的树中选择:java.lang/Runtime/Attributes-它们将被称为“正常运行时间”和“开始时间”。自1970年1月1日起,正常运行时间以毫秒为单位,启动时间以毫秒为单位


PS:如果上述方法不起作用,你可以尝试间接地检索时间。
System.currentTimeMillis()
返回的时间基于机器的时钟,因此它应该与查询时钟的任何其他程序(例如命令行
date
命令)返回的时间相同。一个可能的偏差是java应用程序可能使用不同的时区,例如,由于环境变量的设置与命令行程序不同。

那是什么时间?尝试使用命令“export”设置时间-export TZ=“US/Eastern”正在使用appletviewer选项吗?谢谢!我真的想要时区。看起来其他程序改变了JVM时区,我想知道当前设置了什么时区