Java が 64 ビットか 32 ビットかを確認する
-
Java が 64 または 32 で
System
クラスを使用してあるかどうかを確認する -
os.arch
トークンを使用して、Java が 64 か 32 かを確認する -
java -version
コマンドを使用して、Java が 64 か 32 かを確認する -
Linux の
file
コマンドを使用して、Java が 64 か 32 かを確認する -
jna
ライブラリを使用して、Java が 64 か 32 かを確認する -
Native
クラスを使用して、Java が 64 か 32 かを確認する
このチュートリアルでは、Java が 64 バージョンであるか Java で 32 バージョンであるかを確認する手順を紹介します。
インストールされている Java バージョンが 64 ビットまたは 32 ビットのどちらに基づいているかを確認するには、System.getProperty()
メソッド、Java バージョンコマンド、sun.Platform
クラスなどのいくつかの方法を使用できます。
この記事では、例の中でこれらのメソッドを使用して Java プラットフォームをチェックします。
Java が 64 または 32 で System
クラスを使用してあるかどうかを確認する
この例では、引数として文字列トークンを受け取り、Java バージョンアーキテクチャを示す文字列を返す System
クラスの getProperty()
メソッドを使用しました。
ここでは、Java の内部モデルを表す sun.arch.data.model
文字列を使用しました。以下の例を参照してください。
import java.io.IOException;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
String is64 = System.getProperty("sun.arch.data.model");
System.out.println("Your system supports " + is64 + " bit");
}
}
出力:
Your system supports 64 bit
os.arch
トークンを使用して、Java が 64 か 32 かを確認する
ここでは、System
クラスの getProperty()
メソッドの引数として os.arch
トークンを使用しました。Java のアーキテクチャタイプを返します。以下の例を参照してください。
import java.io.IOException;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
String is64 = System.getProperty("os.arch");
System.out.println("Your system supports " + is64 + " bit");
}
}
出力:
Your system supports amd64 bit
java -version
コマンドを使用して、Java が 64 か 32 かを確認する
これは、インストールされている Java アーキテクチャをチェックする最も簡単な方法の 1つです。コードを記述したくない場合は、ターミナル/コマンドプロンプトを開いて、このコマンドを使用してください。このコマンドを実行すると、Java アーキテクチャとともにすべての詳細が出力されます。
$ java - version
出力:
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
Linux の file
コマンドを使用して、Java が 64 か 32 かを確認する
Linux を使用している場合は、インストールされている Java のパスの場所とともに file
コマンドを使用でき、以下の出力のように出力が得られます。
$ file{YOUR_JRE_LOCATION_HERE} / bin / java
出力:
ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2
jna
ライブラリを使用して、Java が 64 か 32 かを確認する
これは、アーキテクチャ情報を含む内部 Sun パッケージを必要とする別のソリューションです。ここでは、is64Bit()
メソッドを含む sun パッケージの Platform
クラスを使用し、Java が 64 型の場合は true を返し、それ以外の場合は false を返します。以下の例を参照してください。
jna
は、低レベルのコードとの接続に使用されるネイティブ API ライブラリです。
import com.sun.jna.Platform;
import java.io.IOException;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
boolean is64 = Platform.is64Bit();
System.out.println("Your system supports is64 bit: " + is64);
}
}
出力:
Your system supports is64 bit: true
Native
クラスを使用して、Java が 64 か 32 かを確認する
jna
パッケージの Native
クラスは、Javaarch が使用するバイト数を返す定数 POINTER_SIZE
を提供します。8 が返される場合は、64 ビットシステムであることを意味します。それ以外の場合は 32 です。以下の例を参照してください。
import com.sun.jna.Native;
import java.io.IOException;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
boolean is64 = Native.POINTER_SIZE == 8;
System.out.println("Your system supports is64 bit: " + is64);
}
}
出力:
Your system supports is64 bit: true