2

Mac で利用可能なすべての異なる JDK/JRE がどのように相互作用するかを理解しようとしています。Lion の XCode 4.6 でダミーの Cocoa アプリケーション プロジェクトを作成し、JavaVM.framework を追加しました。また、検索パスにあることを確認するためだけに #include を追加し、アプリをビルドしました。Java がインストールされていない Mountain Lion マシンでアプリを実行しようとすると、OS X は OS X 2013-002 用の Java をインストールするように求め、インストールされている場合はアプリケーションを実行します。驚いたことに、マシンに Oracle の JRE または JDK (1.7) が既にインストールされていても、OS X はこれをインストールしようとします。

必要な場合にユーザーが JRE をインストールできるように Apple が提供するフォールバック プロンプトを失うことなく、どの JRE をインストールするかをユーザーに選択させる方法はありますか?

4

1 に答える 1

1

必要な場合にユーザーが JRE をインストールできるように Apple が提供するフォールバック プロンプトを失うことなく、どの JRE をインストールするかをユーザーに選択させる方法はありますか?

いいえ。

JavaVM.frameworkこれは Apple Java 専用であり、ご存じのように、マシンにインストールされている Oracle Java 7 JRE または JDK は無視されます。同様に、Oracle の<appbundler>タスクを使用して Oracle Java 7 で動作する を構築する.app場合、Apple Java 6 は使用されません。最近推奨されるアプローチは、Oracle JRE を内部にバンドルし.app(何か<appbundler>できることがあります)、それを使用することだと思います。システム全体の Java インストールに依存するのではなく、

于 2013-04-10T16:32:35.523 に答える