web-dev-qa-db-ja.com

起動中の-d32および-d64の使用Java

以下からの抜粋を読みます JDK FAQ's

32ビットと64ビットの動作をどのように選択しますか?デフォルトは何ですか?オプション-d32および-d64がJavaランチャーに追加され、プログラムを32ビット環境で実行するか64ビット環境で実行するかを指定します。Solarisでは、これらはILP32およびLP64に対応しますSolarisには、32ビットと64ビットの両方のJ2SE実装がJavaの同じインストール内に含まれているため、どちらのバージョンも指定できます。-d32も-d64も指定されていない場合、デフォルトでは32ビットで実行されますビット環境。

これをテストするために、64ビットのUbuntuゲストOSにログインし、64ビットのJDKバージョン-Linux x64 165.24 MB jdk-8u45-linux-x64.tar.gzをインストールしました。

JDKをインストールした後、Javaプログラムを-d64を使用して実行すると、実際には64ビットインストールであるためすべて期待どおりですが、-d32を使用すると「Error - This Java instance does not support 32 bit JVM」というエラーが表示されます。

エラーは私には理解できますが、私を混乱させるのはこの行です(上記の引用されたパラのように) "オプション-d32および-d64がJavaに追加されましたプログラムを32ビット環境で実行するか64ビット環境で実行するかを指定するランチャー。 "
この行に従って、私の理解は、64ビットバージョンのJavaを起動するとき、-d32を使用して32ビットモードで起動できるということです。

質問:

  1. 私の理解は正しいですか?そして、それが正しい場合、エラーが発生しますか?
  2. 私の理解が真実でない場合は、なぜこれらのコマンドライン引数が必要なのですか?Java using Javaを使用してから、どのインストール(32ビットまたは64ビットJDK) )は私のPATHにあります。
11
hagrawal

あなたが作った引用:

オプション-d32および-d64がJavaランチャーに追加され、プログラムを32ビット環境と64ビット環境のどちらで実行するかを指定します。

solarisオペレーティングシステムでのみ有効です。

後で JDKのFAQ で読むことができます。

他のすべてのプラットフォーム(WindowsおよびLinux)には、個別の32ビットおよび64ビットのインストールパッケージが含まれています。両方のパッケージがシステムにインストールされている場合は、適切な「bin」ディレクトリをパスに追加して、どちらか一方を選択します。一貫性を保つため、Java Linuxでの実装では-d64オプションを受け入れます。

したがって、WindowsとLinuxでは、2番目の質問に答えるために、これらのフラグは役に立たず、32/64ビットの選択は、対応するJVMインストールを実行することによって行われます。

16
Ortomala Lokni