Mac の コマンドラインで使用する Java をアップデートしようとしてちょっと引っかかった

現在のバージョンを確認

macOS High Sierra 10.13.1

☁  ~  java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

Java をアップデート(失敗)

  1. Mac のシステム環境設定
  2. Java
  3. Java コントロール・パネルの更新
  4. 更新

としたけど、コマンドラインJava のバージョンに変化が無い。 このアップデートでは、 /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/javaJava が更新されている。

OS XのJRE 8のインストール

を参照すると、

Oracle製のJREをインストールしても、java -versionのシンボリック・リンクが更新されたりjavaがパスに追加されたりすることはありません。これを可能にするには、JDKをインストールする必要があります。

とあるので、OS で使用する Java の実行環境をインストールしているだけってことか。パスにも Internet Plug-Ins ってあるし、ブラウザで使用する Java を設定しているのか。

Java をアップデート(成功)

から Java SE Development Kit 8u151 をダウンロード、実行

  • コマンドから確認
☁  ~  /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    1.8.0_151, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
    1.7.0_71, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
  • JAVA_HOME を設定
export JAVA_HOME=$(/usr/libexec/java_home)
  • バージョン確認
☁  ~  java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

アップデートが出来ました。 ちょっと引っかかたので備忘録がてら調べた内容をメモー。

参考

www.pupha.net