“java-version”和“java-showversion”之间有什么区别?

“java-version”和“java-showversion”之间有什么区别?,java,jvm,jvm-arguments,jvm-hotspot,Java,Jvm,Jvm Arguments,Jvm Hotspot,java-version和java-showversion之间有什么区别 说 -version标志在打印输出后立即终止JVM 以上数据。然而,有一个类似的flag-showversion 可用于产生相同的输出,但随后继续并执行 给定Java应用程序 所以我在终端的一个选项卡中运行了一个Java程序。(我使用Ubuntu) 在另一个选项卡中,当程序还在运行时,我给出了java-version。根据博客中给出的上述声明,我希望我的Java程序退出,但它没有退出。 另外,当我运行java-showve

java-version
java-showversion
之间有什么区别

-version标志在打印输出后立即终止JVM 以上数据。然而,有一个类似的flag-showversion 可用于产生相同的输出,但随后继续并执行 给定Java应用程序

所以我在终端的一个选项卡中运行了一个Java程序。(我使用Ubuntu) 在另一个选项卡中,当程序还在运行时,我给出了
java-version
。根据博客中给出的上述声明,我希望我的Java程序退出,但它没有退出。 另外,当我运行
java-showversion
时,它给出了完全相同的输出,并且程序执行没有终止

那么这两者的区别是什么呢

我使用Java 8,这是输出:

java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)
注意:博客使用Java6。那么,在以后的Java版本中有什么改变了吗

提前谢谢

根据

-展示版

显示版本信息并继续执行 应用此选项与-version选项等效,除了 后者指示JVM在显示版本后退出 信息

-版本

显示版本信息,然后退出。这个选项是 与-showversion选项等效,但后者不相同 指示JVM在显示版本信息后退出


当您运行程序时,它会创建一个进程。该进程独立于在另一个shell中运行“java-version”时创建的第二个进程。

第一个进程不受第二个进程的任何影响。

您可以调用
java-showVersion MyProgram
,它将在显示版本后运行MyProgram.class。听起来您需要了解基本的Unix用法。您启动的是JVM的一个完全独立的副本,它与在其他地方运行的副本完全无关。它实际上不是一个特定于Unix的东西@chrylis。这就是我在所有操作系统上的工作方式seen@JJF是的,但从Windows上的多选项卡终端启动程序实例的情况要少见得多。您的问题完全由。很难理解为什么你在这里浪费时间,而你本可以在20秒内回答自己的问题。@很难理解直接从相关文档中引用的答案可能有什么错误。实际上不可能。@EJP目前的问题是调用单独的JVM启动,以及为什么它不终止现有的JVM。这并没有解决这个问题。