我正在开发一个基于 Java 的应用程序,用户可以在 USB 闪存驱动器中随身携带该应用程序。在启动时,我想检查插入 USB 的机器上现有的 JVM。
我怎样才能实现它???
我正在开发一个基于 Java 的应用程序,用户可以在 USB 闪存驱动器中随身携带该应用程序。在启动时,我想检查插入 USB 的机器上现有的 JVM。
我怎样才能实现它???
调查 JSmooth -- http://jsmooth.sourceforge.net/ -- 或最新 Java 6 中的 Java Web Start。
http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/cdinstall.03.06.html
如果您将程序包装在 .exe 包装器中 - 作为Launch4j - 它可以在每次执行之前检查 JVM 安装。
这不是先有鸡还是先有蛋的情况吗?
您的 Java 程序需要在 JVM 中启动,然后才能运行其逻辑来查找 JVM。在它看起来的时候,已经找到了一个 JVM,所以我认为你不能用它做任何特别有用的事情。(除非你的“主”应用程序实际上是一个很小的引导程序,它会选择它想要的 JVM 并Runtime.exec
用来启动真正的应用程序。)
无论如何,我建议应用程序不负责选择要在哪个 JVM 中运行。用户将设置他的环境以使用他想要的 JVM 运行,我认为忽略这一点并将您自己的选择强加给他是不礼貌的(这可能是在对这些 JVM 的相对优点了解较少的情况下做出的) .