SDKMANはそれ自身で各種JDKディストリビューションをダウンロード、インストール、管理できる。
しかしOracle JDKなどSDKMAN自体は管理機能を持っていないJDKもある。
これらをSDKMANで管理させる手順。
Oracleのサイトからダウンロードして、普通にインストールする。
たとえばmacOSの場合は /Library/Java/JavaVirtualMachines
にある。具体的には、
/Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk
/Library/Java/JavaVirtualMachines/jdk-14.0.1.jdk
のようなパスにある。
2で特定したディレクトリ配下の /Contents/Home
をSDKMANに渡す。今回はJDK 11を例に取る。
またidentifierも一緒に与える。たとえば 11.0.10-oracle
のような形式。
sdk install java 11.0.10-oracle /Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home
さきほど設定したidentifierを渡せばよい。
sdk default java 11.0.10-oracle
Android StudioやIntelliJ IDEAでOracle JDKを使いたい、かつSDKMANの管理配下から取りたい、という場合は下記の記事が参考になるはず。
常にdefaultとして設定したJDKを参照するようにしたければ、JDK Locationとして $HOME/.sdkman/candidates/java/current
を設定するという荒業もある。