検索
ホームページJava&#&チュートリアルLinux 上で Java JDK をインストールおよび管理するための推奨される方法

The preferred way to install and manage Java JDKs on Linux

私は Fedora Workstation 40 を使用していますが、同様の手順は Ubuntu/Mint などのほとんどの主要な Linux ディストリビューションでも機能します

既存の Java インストールを確認する

一部の 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 の違いについては、次の記事を参照してください。

  • Java プログラミング環境と Java ランタイム環境 (JRE)
  • Java の JDK、JRE、JVM、JIT とは何ですか?

Fedora では、JRE/JDK は /usr/lib/jvm 内に保存されます。したがって、その内容を調べたり、次のようにクエリしたりできます。

find /usr/lib/jvm -name java
find /usr/lib/jvm -name javac

OpenJDK のインストール

私は Fedora 40 を使用していますが、パッケージ マネージャーは dnf です。それぞれの Linux ディストリビューションのパッケージ マネージャー (Ubuntu/Debian の apt など) を介して目的の OpenJDK をインストールします。

  • インストールできる利用可能な JDK を検索します:
  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 のような名前が付けられます

  • そのリストから目的の OpenJDK パッケージをインストールします
  # 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
  • java および javac コマンドが見つかったことを確認してインストールを確認します

Oracle JDKのインストール

  • 公式 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 をインストールすることもできます:

  • 歯車アイコン ⚙️ をクリックして、プロジェクト構造に移動します。 SDKを選択し、プラスアイコンをクリックします。次に、ダウンロードしてインストールする JDK を選択します
  • JDK は ~/.jdks フォルダーにインストールされます (例: ~/.jdks/openjdk-20.0.2/)

IntelliJ は、システム上の利用可能な JDK の場所を自動検出します。プロジェクト構造の構成済み JDK の下に /usr/lib/jvm/jdk-11-oracle-x64 などの既存の JDK フォルダーの場所を追加することもできます


複数の Java インストールの操作

Linux の update-alternatives コマンド (Fedora では単に Alternatives とも呼ばれます) は、代替システムを構成する シンボリック リンク に関する情報を作成、削除、維持、および表示します

同じまたは類似の機能を果たす複数のプログラムを 1 つのシステムに同時にインストールすることができます。ファイルシステム内の総称名は、交換可能な機能を提供するすべてのファイルで共有されます。代替システムは、この一般名で参照される実際のファイルを判断するのに役立ちます。

役立つ参考文献:

    update-alternatives - Linux マンページ
  • Linux の代替コマンドの紹介 - RedHat
パッケージ マネージャー経由で 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 インストールの中から選択してください


  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をPATHに追加

Java インストール間の管理に update-alternatives メソッドに従っており、すべてのエントリが完了している場合、これは必要ありません

ただし、シェル プロファイルで構成を手動で設定するには、次のようにすることができます:

  • シェル構成ファイルで環境変数を設定します (つまり、~/.zshrc、~/.bashrc など)。
java --version  # OR "java -version" for older java
javac --version
  • シェルを再起動します:
find /usr/lib/jvm -name java
find /usr/lib/jvm -name javac
  • これで、Java が正常に検出されるはずです
  dnf search jdk

以上がLinux 上で Java JDK をインストールおよび管理するための推奨される方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?Mar 17, 2025 pm 05:46 PM

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?Mar 17, 2025 pm 05:45 PM

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?Mar 17, 2025 pm 05:44 PM

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?Mar 17, 2025 pm 05:43 PM

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Mar 17, 2025 pm 05:35 PM

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境