Skip to main content

macOSでJavaをインストール・管理する方法

著者

Keshav Malik

blog java macos

2023年10月12日

0 分で読めます

Javaはテクノロジーの世界を形作ってきました。数え切れないほどのアプリケーションを支え、エンタープライズソフトウェアに欠かせない存在であり、多くの新しい開発者が最初に学ぶ言語でもあります。プラットフォームに依存しない設計により、Javaは「一度書けば、どこでも実行できる」という原則を今も貫いています。

開発者であれば、いずれシステムにJavaをインストールする必要があるでしょう。互換性テストや早期アクセスビルドの機能確認を行う際、複数のバージョンを同時にインストールすることも珍しくありません。

ただし、1台のシステムで異なるJavaバージョンを管理するのは、すぐに複雑になりがちです。この記事では、macOSシステムにさまざまなバージョンのJavaをインストールして管理する方法を解説し、その手順を簡素化する方法をご紹介します。また、よくある質問への回答も取り上げ、macOSでJavaを使い始める際に役立つ情報をお届けします。

macOSにJavaを手動でインストールする

macOSにJavaを手動でインストールすると、自動化された方法よりもプロセスを細かく制御でき、内容も把握しやすくなります。

まず、OracleのJavaダウンロードページにアクセスします。ここでは、さまざまなJavaバージョンとそれぞれの機能を確認できます。特定の旧バージョンを探すには、ページ内のJava Archiveセクションをご利用ください。要件に合ったJavaバージョンを選び、macOSインストーラーをDMGファイルとしてダウンロードして、ダブルクリックで実行します。画面の指示に従って、システムにJavaをインストールしてください。

Oracle以外にも、Javaディストリビューションを提供するベンダーは複数あります。どれを選ぶかは、ライセンスや開発環境など、具体的なニーズによって異なります。たとえば、AWS向けに開発している場合は、Amazon Correttoを利用できます。利用可能なJavaディストリビューションの一覧は、Foojay almanacをご覧ください。

このガイドでは、OracleのJavaディストリビューションを使用します。

OracleのmacOS向けJDKダウンロードページに重ねて表示された、Java Development Kit 20.0.1インストーラーのようこそ画面

Javaをインストールしたら、新しいインストールをmacOSシステムに認識させるため、環境変数を設定します。最も重要な変数はJAVA_HOMEです。これにより、OSやほかのアプリケーションにJava Development Kit(JDK)のインストール先を知らせます。

JAVA_HOMEを設定するには、ターミナルを開いて次のコマンドを入力します。

echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.bash_profile

このコマンドは、.bash_profileファイルにexportの行を追加し、新しいターミナルセッションを開始するたびにJAVA_HOME変数が設定されるようにします。/usr/libexec/java_homeは、Javaランタイムのインストール先のパスを返すJava_Homeスクリプトを呼び出します。パスを囲むのはシングルクォーテーション(')ではなく、バッククォート(`)であることを確認してください。

macOSへのJavaの手動インストールは簡単に見えるかもしれませんが、特にJavaやmacOSに慣れていない開発者にとっては、難しく時間のかかる点がいくつかあります。

  1. OracleのWebサイトを操作し、使用中のmacOSバージョンとの互換性を確認する必要があります。慣れていない場合、この作業は複雑になりかねません。

  2. JAVA_HOMEやPATHなどの環境変数を設定するには、隠しシステムファイルを編集する必要があります。隠しシステムフォルダの操作は難しく感じられることがあり、誤るとJavaの予期しない動作やmacOSのエラーにつながる可能性があります。

こうした問題を避けるため、macOSにJavaをインストールする別の方法を見ていきましょう。

Homebrewを使ってmacOSにJavaをインストールする

Homebrewは、macOSエコシステムで広く使われているパッケージマネージャーです。Javaを含む膨大なソフトウェアライブラリに対応しており、Javaのインストールを大幅に簡素化します。

Homebrewをインストールするには、ターミナルで次のコマンドを実行します。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

インストールが完了したら、Javaを取得できます。ターミナルで次のコマンドを実行し、11を必要なJavaバージョンに置き換えてください。

brew install openjdk@11

HomebrewではJAVA_HOME環境変数が自動的に設定されない場合があります。そのため、次の行をシェルのプロファイルファイル(.bash_profile、.zshrcなど)に追加してください。

export JAVA_HOME=$(/usr/libexec/java_home -v 11)
export PATH=$JAVA_HOME/bin:$PATH

Homebrewを使う方法には、Javaを手動でインストールする方法と比べて多くの利点があります。コマンドはシンプルで直感的です。また、Homebrewがアップデートを管理するため、手間をかけずにJavaを最新の状態に保てます。

SDKMAN!を使ってmacOSにJavaをインストールする

Javaをインストールするもう1つの方法はSDKMAN!です。インストールが簡単な多機能ツールで、複数のJavaバージョンを管理できます。

インストール手順は簡単です。ターミナルを開き、次のコマンドを実行します。

curl -s "https://get.sdkman.io" | bash

次に、現在のシェルでSDKMAN!を初期化します。次のコマンドを実行してください。

source $HOME/.sdkman/bin/sdkman-init.sh

これで、利用可能なJavaバージョンをすべて一覧表示できます。

sdk list java

利用可能なバージョンがすべて表示されます。たとえばJava 19.0.2-oracleをインストールするには、次のコマンドを使います。

sdk install java 19.0.2-oracle

Javaをインストールすると、SDKMAN!でその時点で使用するJavaバージョンを選べます。特定のバージョンを選択するには、次のコマンドを使い、バージョン番号を置き換えてください。

sdk use java 19.0.2-oracle

SDKMAN!を使えば、Javaバージョンを簡単に切り替えられるため、複数のプロジェクトの要件に対応できます。また、複数のJDKディストリビューションもサポートしています。

macOSで複数のJavaバージョンを管理する

システムに複数のJavaバージョンをインストールする理由はさまざまです。取り組む作業によっては、異なるJavaバージョンを頻繁に切り替える必要があるかもしれません。

JAVA_HOME

バージョンを切り替えるには、JAVA_HOME環境変数を編集するだけです。前述のとおり、この変数はJava SDKのインストール先をシステムに知らせます。

ターミナルを開き、11を使用したいJavaバージョンに置き換えて、次のコマンドを入力します。

export JAVA_HOME=`/usr/libexec/java_home -v 11`

このコマンドは、現在のセッションで使用するJavaバージョンを設定します。設定を永続化するには、この行をシェルの初期化ファイルに記述する必要があります。Bashを使用している場合は.bashrcファイルに、zshを使用している場合は.zshrcファイルに追加してください。

シェルスクリプト

複数のJavaバージョンを管理するもう1つの方法は、シェルスクリプトを作成することです。シェルスクリプトは小さなプログラムで、この場合はバージョン切り替えを自動化し、1つのコマンドで実行できるようにします。

SDKMAN!

最後に、SDKMAN!を使えばJavaバージョンを簡単に切り替えられます。sdk useを実行すると、アクティブなJavaバージョンが19.0.2に設定されます。

sdk use java 19.0.2-oracle

よくある質問

macOSでJavaをインストール・管理するいくつかの方法を確認したところで、手順に関するよくある質問とその回答を見ていきましょう。

MacにJavaをインストールするにはどうすればよいですか?

手動でインストールする方法のほか、Homebrewのようなパッケージマネージャーや、SDKMAN!のような多機能ツールを利用する方法があります。

macOSでJavaのパスを設定または変更するにはどうすればよいですか?

Javaのパスを設定または変更するには、環境変数JAVA_HOMEを編集します。使用しているシェルに応じて、JAVA_HOMEを選択したJavaのバージョンに設定するexportコマンドを、.bashrcファイルまたは.zshrcファイルに追加します。

macOSでJavaをアンインストールするにはどうすればよいですか?

Javaのアンインストールは、システムからJavaフォルダを削除するだけで簡単に行えます。このフォルダは通常、/Library/Java/JavaVirtualMachines/にあります。

macOS Big Sur(または最新のmacOSバージョン)にJavaをインストールするにはどうすればよいですか?

Big Surや最新のOSバージョンを含む最近のmacOSでは、同様の手順でJavaをインストールできます。手動インストール、Homebrew、SDKMAN!のいずれかを選び、この記事で前述した手順に従ってください。

どのJavaパッケージが必要ですか?

必要なJavaパッケージは、要件によって異なります。Javaアプリケーションを開発する場合は、JDKが必要です。Javaアプリケーションを実行するだけであれば、Java Runtime Environment(JRE)で十分です。

MacではJavaはどこにインストールされていますか?

macOSでは、Javaは通常/Library/Java/JavaVirtualMachines/にインストールされています。この場所には、Javaの各バージョンごとにサブディレクトリがあります。

Mac M1にJavaをインストールするにはどうすればよいですか?

Mac M1へのJavaのインストール方法は、ほかのMacと同じです。手動でインストールする方法、Homebrewを使う方法、SDKMAN!を使う方法から選び、上記の手順に従ってください。

次のステップ

この記事では、macOSにJavaをインストールし、複数のJavaバージョンを管理する方法を詳しく解説しました。手動でのインストールも有効な選択肢ですが、Homebrewなら手順を簡素化し、アップデートを自動化できます。SDKMAN!はさらに柔軟性が高く、バージョン管理も自動化できるため、多くの開発者に選ばれています。

macOSでJavaを使い始めるにあたって、唯一の正解はありません。技術への習熟度、プロジェクトの要件、個々の作業スタイルに応じて選びましょう。この選択は、macOSでのJava開発体験を左右する重要なものです。

macOSでJavaのインストールや管理に問題が生じたら、この記事をぜひご参照ください。ご紹介した手順に沿って進めれば、Javaのインストールに伴う複雑さを解消し、macOSで快適なJava開発を実現できます。

Javaアプリのセキュリティ対策を始めましょう

SnykでJavaの脆弱性を無料で検出・修正できます。

クレジットカードは不要です。

またはAzure AD Docker ID Bitbucketで登録

Snykを利用することで、利用規約およびプライバシーポリシーを含む当社の各種ポリシーに同意したものとみなされます。

カテゴリー:

続きを読む

Blog

Stadium Summer:Snyk Connect Fan Zone Tour

SnykのFan Zone Tourでは、8都市と3回のオンラインセッションで、AIセキュリティのワークショップやネットワーキング、楽しい競技を開催しました。参加者はスキルを磨き、アイデアを共有し、共に成長しました。

Blog

Snyk VulnBench JS 1.0:LLMは同じバグを2回見つけられるか?

Snyk VulnBench JS 1.0:300回の反復スキャンで、LLMのセキュリティ検出結果は実行ごとに異なる一方、SASTとモデルはそれぞれ異なる脆弱性の見落としを検出することが明らかに。

feature insights context
Blog

お客様と築くAIセキュリティ:Evoのデザインパートナープログラムから得た5つの教訓

SnykのEvoデザインパートナープログラムから得た5つの重要な教訓をご紹介します。AIの検出、リスクインテリジェンス、ポリシーの自動化によって、チームが生成AIを保護し、拡大するAI利用を大規模に統制する方法をご覧ください。