【Mac】Java Open JDK 11.0.2 インストール方法と、インストール後にターミナルで「Java -version」を入力しても「The operation couldn’t be completed.」というエラーが出る件についての注意

プログラミング

MacでJavaを使えるようにしたい。
そんな時に誰しも通る道である「PATHを通す」という試練。
Windowsと違ってGUIでシステム環境変数にPATHを通すのではないので、パソコン初心者には難しく感じるかと思います。

今回はJavaをインストールしたけれどパスが上手く通っておらず、「The operation couldn’t be completed. Unable to locate a Java Runtime.」というエラー出た際の対処法をご紹介していきたいと思います。

今回は下記の環境でのお話になります。
・MacOS Monterey(バージョン1.2.6)
・ターミナルは.zshを使用(bashの場合も手順は変わりません)
・Java Open JDK 11.0.2

実際に私が上手くいった手順は下記の目次の通りです。
詳しく見ていきましょう。

Open JDK 11.0.2をインストール済みの人は目次の「ターミナルで環境変数を設定する」まで飛んじゃって下さい。

Open JDK 11.0.2をインストールする

Open JDK 11.0.2は下記のサイトからダウンロードできます。
https://openjdk.java.net

下記の赤枠の「jdk.java.net/19」リンクをクリック

下記の赤枠の「Archive」というリンクをクリック

下記のページに飛びます。

下へスクロールさせ、今回ダウンロードする
Open JDK 11.0.2>Mac 64bit の「tar.gz」のリンクをクリック

そうすると下記のようにtar.gzファイルがダウンロードされます。
※ダウンロードには安定的なインターネット環境が必要になります。(結構時間がかかる。。)
ファイル名が「openjdk-11.0.2_osx-x64_bin.tar.gz」という名前に切り替わったら正常にダウンロードされたことになります。それまではクリックなどしないで待機します。

ファイルを自分が後で見て分かりやすい場所に移動させます。
今回は「java」フォルダに移動させます。

解凍させると下記のようにフォルダが出てきます。
(解凍させる方法は右クリック>開くをクリック)

ターミナルで環境変数を設定する

次にターミナルアプリを起動してJavaのPATHを通します。
PATHを通すとはつまり、環境変数にインストールしたJavaアプリのファイルパスを通す(ファイルの置いてある場所を指定する)という意味です。

PATHを通すとターミナルでどの階層にいてもjavaのコマンドを実行することができます。
逆にPATHを通さないといちいちJavaのアプリがあるところに移動しないとJavaコマンドを実行できないので不便ですよね。

まずは下記のコマンドを実行してJavaアプリへのPATHを通します。

export PATH=$PATH:/Users/ユーザ名/Desktop/java/jdk-11.0.2.jdk/Contents/Home

$PATH:以降は自分がアプリを置いた場所を指定して下さい。(私はデスクトップの下に「java」というフォルダを作成してその中にインストールしたjavaアプリのフォルダを置いています。)

Javaアプリのどこに指定すればいいのか?というと、下記の通りです。
〜/jdk-11.0.2.jdk/Contents/Home
この「HOME」というフォルダまでのファイルパスを指定します。

じゃあ、ファイルの置いてある場所のファイルパスを簡単に確認するにはどうすればいいのか?というと「Finder」でファイルパスを取得したいフォルダの中まで移動して下記のショートカットキーでOKです。
option + command + c

さらに加えて、Javaの場合は「JAVA_HOME」というJavaを使うための環境変数を設定する必要があるので、下記コマンドを実行します。

export JAVA_HOME="/Users/ユーザ名/Desktop/java/jdk-11.0.2.jdk/Contents/Home"

ターミナルのコマンドで設定した環境変数はプロセスを閉じると消えてしまう?!

表題の通り、Macの場合、ターミナルでコマンド実行して環境変数設定しても設定した内容が無意味に消し去ってしまうのです。

環境変数設定を保存しておきたい場合には、「~/.zshrc」ファイル(Shellのこと)に上述したexportコマンドを定義し、かつ有効化しておく必要があります。(.bashの場合は「~/.bash_profile」ファイル)

まずは、自分のターミナルアプリで使用しているシェルが「bash」なのか「zsh」なのか確認するために下記のコマンドを実行します。

% echo $SHELL

/bin/zsh

「/bin/zsh」と出たので私の環境では「zsh」を使っていることがわかりました。(「bash」の場合「/bin/bash」と出力されます)

環境変数を定義するファイルはターミナル上で下記のコマンドを実行することで開くことができます。

open ~/.zshrc

実行すると下記のようにテキストエディタファイルが開き、編集できるようになります。

下記のように追記します。
(ユーザ名は自分のPCのユーザ名を入力)

export PATH=$PATH:/Users/ユーザ名/Desktop/java/jdk-11.0.2.jdk/Contents/Home
export JAVA_HOME="/Users/ユーザ名/Desktop/java/jdk-11.0.2.jdk/Contents/Home"

その後に「Ctrl+S」を押して保存することを忘れずに。保存が完了したら閉じていいです。
下記のようになりました。

※これで終わりではありません!

その後、ターミナルに戻って、今保存した内容を有効化しないといけません。
※Macの場合「~/.zshrc」ファイルを保存しただけではターミナルを閉じると保存した内容が適用されずに何もなかったことになります。

下記のコマンドを実行して有効化します。

source ~/.zshrc

これで環境変数の設定は完了です。

最後にちゃんとPATHが通っているか確認するために下記のJavaコマンドを実行しましょう。

java -version

下記のようにJavaのバージョンが出力されたら成功です。

まとめ

今回は、MacでJava Open JDK 11.0.2 インストール後、環境変数の設定方法をまとめてみました。
私自身、何度も環境変数設定したことあるのに、偏執狂のように何度も何度も躓いてしまうので、今回整理することができてよかったです。

コメント

タイトルとURLをコピーしました