私は、ユーザーが USB フラッシュ ドライブに入れて持ち運べる Java ベースのアプリケーションに取り組んでいます。起動時に、USB が差し込まれているマシン上の既存の JVM を確認したいと考えています。
どうすれば達成できますか???
私は、ユーザーが USB フラッシュ ドライブに入れて持ち運べる Java ベースのアプリケーションに取り組んでいます。起動時に、USB が差し込まれているマシン上の既存の JVM を確認したいと考えています。
どうすれば達成できますか???
プログラムを .exe ラッパー ( Launch4j など) でラップすると、各実行前に JVM のインストールをチェックできます。
JSmooth -- http://jsmooth.sourceforge.net/ -- または Java Web Start を最新の Java 6 で調査します。
http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/cdinstall.03.06.html
これはニワトリが先か卵が先かという状況ではないでしょうか。
ロジックを実行して JVM を探す前に、Java プログラムを JVM で起動する必要があります。そして、それが見える時点で、JVM はすでに見つかっているので、特に有用なことは何もできないと思います。(ただし、「メイン」アプリが、必要な JVM を選択しRuntime.exec
、実際のアプリケーションを起動するために使用する小さなブートストラッパーである場合を除きます。)
いずれにせよ、実行する JVM を選択するのはアプリケーションの責任ではないことをお勧めします。ユーザーは、必要な JVM で実行するように環境をセットアップします。これを無視して、自分の選択をユーザーに強制するのは失礼だと思います (これらの JVM の相対的な利点についての知識が少ない場合に行われる可能性があります)。 .