私は Fedora Workstation 40 を使用していますが、同様の手順は Ubuntu/Mint などのほとんどの主要な Linux ディストリビューションでも機能します
一部の Linux ディストリビューションでは、Java がデフォルトでインストールされます。ただし、これは単なる JRE であり、JDK ではありません。 java コマンドは見つかっても、javac コマンドが見つからないため、これを確認できます。
java # would show manual of arguments javac # would give not found error if JDK not installed
java --version # OR "java -version" for older java javac --version
JDK、JRE、JVM の違いについては、次の記事を参照してください。
Fedora では、JRE/JDK は /usr/lib/jvm 内に保存されます。したがって、その内容を調べたり、次のようにクエリしたりできます。
find /usr/lib/jvm -name java find /usr/lib/jvm -name javac
私は Fedora 40 を使用していますが、パッケージ マネージャーは dnf です。それぞれの Linux ディストリビューションのパッケージ マネージャー (Ubuntu/Debian の apt など) を介して目的の OpenJDK をインストールします。
dnf search jdk
さまざまな Java バージョンとパッケージ内のバリアント サフィックスを含む、インストール可能なパッケージのリストが表示されます。ヘッドレス バリアントには通常、JRE が含まれるだけです。 Java 開発に必要なすべてのツールを備えた完全な JDK をインストールするには、通常、dnf の名前に -devel という用語サフィックスが含まれる、パッケージの開発バリアントが必要です。以下は、dnf 出力からの Java 17 OpenJDK のいくつかのパッケージ バリアント名のリストです:
java-17-openjdk.x86_64 : OpenJDK 17 Runtime Environment java-17-openjdk-devel.x86_64 : OpenJDK 17 Development Environment java-17-openjdk-devel-fastdebug.x86_64 : OpenJDK 17 Development Environment optimised with full debugging on java-17-openjdk-devel-slowdebug.x86_64 : OpenJDK 17 Development Environment unoptimised with full debugging on java-17-openjdk-fastdebug.x86_64 : OpenJDK 17 Runtime Environment optimised with full debugging on java-17-openjdk-headless.x86_64 : OpenJDK 17 Headless Runtime Environment java-17-openjdk-headless-fastdebug.x86_64 : OpenJDK 17 Runtime Environment optimised with full debugging on java-17-openjdk-headless-slowdebug.x86_64 : OpenJDK 17 Runtime Environment unoptimised with full debugging on java-17-openjdk-javadoc.x86_64 : OpenJDK 17 API documentation java-17-openjdk-portable.x86_64 : OpenJDK 17 Runtime Environment portable edition java-17-openjdk-portable-devel.x86_64 : OpenJDK 17 Development Environment portable edition java-17-openjdk-portable-sources.x86_64 : OpenJDK 17 full patched sources of portable JDK java-17-openjdk-slowdebug.x86_64 : OpenJDK 17 Runtime Environment unoptimised with full debugging on java-17-openjdk-src.x86_64 : OpenJDK 17 Source Bundle java-17-openjdk-src-fastdebug.x86_64 : OpenJDK 17 Source Bundle for packages with debugging on and optimisation java-17-openjdk-src-slowdebug.x86_64 : OpenJDK 17 Source Bundle for packages with debugging on and no optimisation
Ubuntu ではパッケージが少なく、インストールするパッケージは通常、JDK ツールセット全体に対して openjdk-17-jdk のような名前が付けられます
# Installing the latest OpenJDK with optimized debugging sudo dnf install java-latest-openjdk-devel-fastdebug # Installing a specific version like OpenJDK 17 sudo dnf install java-17-openjdk-devel
公式 Oracle SE ダウンロード ページにアクセスしてください。必要な Java バージョンのダウンロード セクションを見つけます
お使いのプラットフォームに適切なパッケージをダウンロードします。 Fedora などの RedHat ベースの Linux ディストリビューションの場合は、.rpm パッケージ (Ubuntu/Debian の場合は .deb) をダウンロードします。ダウンロードする前に、Oracle にサインインし、条件に同意する必要があります
ダウンロードしたファイル (jdk-11.0.24_linux-x64_bin.rpm など) をダブルクリックし、[インストール] を選択します。 Oracle JDK をインストールして構成します。
OracleJDK がインストールされたので、java および javac コマンドが検出されることを確認します
IntelliJ 自体から JDK をインストールすることもできます:
IntelliJ は、システム上の利用可能な JDK の場所を自動検出します。プロジェクト構造の構成済み JDK の下に /usr/lib/jvm/jdk-11-oracle-x64 などの既存の JDK フォルダーの場所を追加することもできます
Linux の update-alternatives コマンド (Fedora では単に Alternatives とも呼ばれます) は、代替システムを構成する シンボリック リンク に関する情報を作成、削除、維持、および表示します。
同じまたは類似の機能を果たす複数のプログラムを 1 つのシステムに同時にインストールすることができます。ファイルシステム内の総称名は、交換可能な機能を提供するすべてのファイルで共有されます。代替システムは、この一般名で参照される実際のファイルを判断するのに役立ちます。役立つ参考文献:
パッケージ マネージャー経由で OpenJDK をインストールするか、ダウンロードしたファイルから Oracle-JDK をインストールすると、そのプロセス中に代替ファイルが自動的に更新されるはずですコマンドで使用可能なオプションを表示する
java # would show manual of arguments javac # would give not found error if JDK not installed出力は次のようになります:
java --version # OR "java -version" for older java javac --version同様に、javac の代替オプション リストを参照してください
コマンドの代替エントリの追加
find /usr/lib/jvm -name java find /usr/lib/jvm -name javacたとえば、IntelliJ 内から JetBrains Runtime (JCEF) JDK をダウンロードしました。これは ~/.jdks/jbrsdk_jcef-17.0.12/ フォルダーにダウンロードされました。しかし、それは代替リストには表示されませんでした。そこで、java と javac の代替エントリを次のように追加します。
dnf search jdk同様に、必要に応じて、jar、javadoc などのコマンドの代替手段を追加します
次のようにフォロワー リンクを追加することもできます。
--インストールリンク名パス優先度 [--フォロワーリンク名パス]... [--initscript サービス] [--ファミリー名]
使用可能なコマンドの代替手段の切り替え
java-17-openjdk.x86_64 : OpenJDK 17 Runtime Environment java-17-openjdk-devel.x86_64 : OpenJDK 17 Development Environment java-17-openjdk-devel-fastdebug.x86_64 : OpenJDK 17 Development Environment optimised with full debugging on java-17-openjdk-devel-slowdebug.x86_64 : OpenJDK 17 Development Environment unoptimised with full debugging on java-17-openjdk-fastdebug.x86_64 : OpenJDK 17 Runtime Environment optimised with full debugging on java-17-openjdk-headless.x86_64 : OpenJDK 17 Headless Runtime Environment java-17-openjdk-headless-fastdebug.x86_64 : OpenJDK 17 Runtime Environment optimised with full debugging on java-17-openjdk-headless-slowdebug.x86_64 : OpenJDK 17 Runtime Environment unoptimised with full debugging on java-17-openjdk-javadoc.x86_64 : OpenJDK 17 API documentation java-17-openjdk-portable.x86_64 : OpenJDK 17 Runtime Environment portable edition java-17-openjdk-portable-devel.x86_64 : OpenJDK 17 Development Environment portable edition java-17-openjdk-portable-sources.x86_64 : OpenJDK 17 full patched sources of portable JDK java-17-openjdk-slowdebug.x86_64 : OpenJDK 17 Runtime Environment unoptimised with full debugging on java-17-openjdk-src.x86_64 : OpenJDK 17 Source Bundle java-17-openjdk-src-fastdebug.x86_64 : OpenJDK 17 Source Bundle for packages with debugging on and optimisation java-17-openjdk-src-slowdebug.x86_64 : OpenJDK 17 Source Bundle for packages with debugging on and no optimisation出力は以下のようになります。 * は利用可能な最良のバージョンを示し、現在の選択を示します:
# Installing the latest OpenJDK with optimized debugging sudo dnf install java-latest-openjdk-devel-fastdebug # Installing a specific version like OpenJDK 17 sudo dnf install java-17-openjdk-devel同様に、javac の代替オプションから選択します
JDK パッケージをアンインストール/削除するときは、それぞれの代替エントリも忘れずに削除してください
たとえば、JCEF JDK の Java コマンド代替エントリを削除するには:
java # would show manual of arguments javac # would give not found error if JDK not installed
Java インストール間の管理に update-alternatives メソッドに従っており、すべてのエントリが完了している場合、これは必要ありません
ただし、シェル プロファイルで構成を手動で設定するには、次のようにすることができます:
java --version # OR "java -version" for older java javac --version
find /usr/lib/jvm -name java find /usr/lib/jvm -name javac
dnf search jdk
以上がLinux 上で Java JDK をインストールおよび管理するための推奨される方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。