MacにJavaをインストールした時の備忘録
MacにJavaをインストールした時のメモを残す。
事前に現在のバージョンを確認。(たぶん、最初から入っているもの)
1$ java --version
2openjdk 16.0.1 2021-04-20
3OpenJDK Runtime Environment AdoptOpenJDK-16.0.1+9 (build 16.0.1+9)
4OpenJDK 64-Bit Server VM AdoptOpenJDK-16.0.1+9 (build 16.0.1+9, mixed mode, sharing)
5$ javac --version
6javac 16.0.1
インストール可能なリストを表示。
1$ brew search jdk
2==> Formulae
3openjdk openjdk@11 openjdk@17 openjdk@8 jd mdk cdk
4
5==> Casks
6adoptopenjdk ✔ jdk-mission-control oracle-jdk sapmachine-jdk
7gama-jdk microsoft-openjdk oracle-jdk-javadoc semeru-jdk-open
今回はこの中からopenjdkを選択してインストールする。(▲▲▲はユーザ名)
1$ brew install openjdk
2==> Downloading https://ghcr.io/v2/homebrew/core/openjdk/manifests/18.0.2
3######################################################################## 100.0%
4==> Downloading https://ghcr.io/v2/homebrew/core/openjdk/blobs/sha256:bbcf2194487d9beeaa1d5e
5==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:bbcf219
6######################################################################## 100.0%
7==> Pouring openjdk--18.0.2.arm64_monterey.bottle.tar.gz
8==> Caveats
9For the system Java wrappers to find this JDK, symlink it with
10 sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
11
12openjdk is keg-only, which means it was not symlinked into /opt/homebrew,
13because macOS provides similar software and installing this software in
14parallel can cause all kinds of trouble.
15
16If you need to have openjdk first in your PATH, run:
17 echo 'export PATH="/opt/homebrew/opt/openjdk/bin:$PATH"' >> /Users/▲▲▲/.bash_profile
18
19For compilers to find openjdk you may need to set:
20 export CPPFLAGS="-I/opt/homebrew/opt/openjdk/include"
21
22==> Summary
23🍺 /opt/homebrew/Cellar/openjdk/18.0.2: 642 files, 309MB
24==> Running `brew cleanup openjdk`...
25Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
26Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
何やら下の方にメッセージが表示されたのでWeb翻訳してみた。
1◆翻訳結果
2システム Java ラッパーがこの JDK を見つけるには、次のようにシンボリック リンクします。
3 sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /ライブラリ/Java/JavaVirtualMachines/openjdk.jdk
4
5openjdk は keg-only です。つまり、/opt/homebrew にシンボリック リンクされていません。
6macOS は同様のソフトウェアを提供しており、このソフトウェアを
7パラレルはあらゆる種類の問題を引き起こす可能性があります。
8
9PATH に最初に openjdk が必要な場合は、次を実行します。
10 echo 'export PATH="/opt/homebrew/opt/openjdk/bin:$PATH"' >> /Users/▲▲▲/.bash_profile
11
12コンパイラが openjdk を見つけるには、次のように設定する必要がある場合があります。
13 export CPPFLAGS="-I/opt/homebrew/opt/openjdk/include"
14
15==>まとめ
16🍺 /opt/homebrew/Cellar/openjdk/18.0.2: 642 ファイル、309MB
17==> `brew cleanup openjdk` を実行中...
18HOMEBREW_NO_INSTALL_CLEANUP を設定して、この動作を無効にします。
19これらのヒントは HOMEBREW_NO_ENV_HINTS で非表示にします (`man brew` を参照)。
最下部のメッセージから判断すると、インストール時のごみ処理を実行しているっぽい。
メッセージに従って指定のコマンドを実行。
1$ sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
2Password:
3$ echo 'export PATH="/opt/homebrew/opt/openjdk/bin:$PATH"' >> /Users/▲▲▲/.bash_profile
4$ echo 'export CPPFLAGS="-I/opt/homebrew/opt/openjdk/include"' >> /Users/▲▲▲/.bash_profile
これにて設定完了。
バージョン確認とインストールされた場所の確認。
1$ java --version
2openjdk 18.0.2 2022-07-19
3OpenJDK Runtime Environment Homebrew (build 18.0.2+0)
4OpenJDK 64-Bit Server VM Homebrew (build 18.0.2+0, mixed mode, sharing)
5$ which java
6/opt/homebrew/opt/openjdk/bin/java
7$ which javac
8/opt/homebrew/opt/openjdk/bin/javac
お馴染みのHello Worldプログラムを作成してコンパイル&実行してみる。
1$ cat Test.java
2public class Test {
3 public static void main(String [] args) {
4 System.out.println("Hello World!");
5 }
6}
7$ javac Test.java
8$ ls Test*
9Test.class Test.java
10$ java Test
11Hello World!
以上