0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

JAVA_HOMEが変更されない時

Posted at

AndroidやサーバーサイドでJavaの設定を可変にしたい時があると思います。
JAVA_HOMEが変わらなくて色々別の場所を疑ってしまったので備忘録として記載します。

起こったこと

JAVA_HOMEがJDK21のまま固定される。

原因

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    21.0.6 (arm64) "Oracle Corporation" - "Java SE 21.0.6" /Library/Java/JavaVirtualMachines/jdk-21.0.6.jdk/Contents/Home
    17.0.11 (arm64) "Amazon.com Inc." - "Amazon Corretto 17" /Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home

$ vi ~/.zshrc
export JAVA_HOME=`/usr/libexec/java_home -v "Java SE 21.0.6"`
rem これだと、JDK21のPathを返してしまう
export JAVA_HOME=`/usr/libexec/java_home -v "Amazon Corretto 17"`
rem これだと、JDK17のパスを返す
export JAVA_HOME=`/usr/libexec/java_home -v "17.0.11"`
$ source ~/.zshrc

$ /usr/libexec/java_home -v "17.0.11"
/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home

rem Java17を使用中の段階は正しいものと勘違いしてしまう
$ /usr/libexec/java_home -v "Amazon Corretto 17"
/Library/Java/JavaVirtualMachines/jdk-21.0.6.jdk/Contents/Home

疑ってしまった範囲

  1. InteliJが上流のJAVA_HOMEを作ったのか?
  2. Oracleがインストーラー経由で新しいJAVA_HOMEを作ったのか?
    (初めてインストーラー経由でJavaをインストールしたため、
    Oracleが消せない呪いをMacに残したのかと思って狂気でした)

結論

Amazonが独自のJDKを作ってその対応が不完全だった。
CodeCommmitも新規サービス消えたけど、Amazon嫌いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?