-
Notifications
You must be signed in to change notification settings - Fork 98
Description
Description
Adoptium (formerly AdoptOpenJDK) JDKs are generally supported by asdf-java (see #158). However, with the most recent LTS releases of the JDK, Adoptium/AdoptOpenJDK also releases static libs (see their release page for JDK 11.0.13+8 as an example).
These static lib releases are picked up by asdf-java (see
asdf-java/data/jdk-linux-x86_64.tsv
Line 41 in 797b8c1
| adoptopenjdk-11.0.13+8 OpenJDK11U-static-libs-musl_x64_alpine-linux_hotspot_11.0.13_8.tar.gz https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.13%2B8/OpenJDK11U-static-libs-musl_x64_alpine-linux_hotspot_11.0.13_8.tar.gz 95435c5cd94959661f3c40ecba499611d95c7764a91919725564a3aa587df4db |
tail -n 1 in Line 74 in 797b8c1
| release_data=$(grep "^${ASDF_INSTALL_VERSION} " "${CACHE_DIR}/releases-${OS}-${ARCHITECTURE}.tsv" | tail -n 1) |
javac.
This issue affects four different Adoptium/AdoptOpenJDK releases, all of which are LTS releases:
tmp.pLplZRHBjQ ❯❯❯ rg 'static-libs' /tmp/asdf-java.cache/releases-linux-x86_64.tsv | awk '{print $1}'
adoptopenjdk-11.0.13+8
adoptopenjdk-11.0.13+8
adoptopenjdk-17.0.1+12
adoptopenjdk-17.0.1+12
temurin-11.0.13+8
temurin-11.0.13+8
temurin-17.0.1+12
temurin-17.0.1+12
Other Adoptium/AdoptOpenJDK releases work correctly (including previous releases of JDK 11 and 17) because Adoptium did not publish static libs for those releases.
Environment
OS: Debian GNU/Linux bookworm/sid on Windows 10 x86_64 (WSL2)
CPU: Intel i7-11700
Replication steps
- Run
asdf install java temurin-11.0.13+8 - Run
asdf shell java temurin-11.0.13+8 - Run
asdf which javac
Expected outcome
Temurin JDK 11.0.13+8 is installed and asdf which javac succeeds.
Actual outcome
asdf-java installs the Temurin JDK 11.0.13+8 static libs only which does not include binaries, so asdf cannot find javac:
tmp.pLplZRHBjQ ❯❯❯ asdf install java temurin-11.0.13+8
############################################################################################################ 100.0%############################################################################################################ 100.0%
OpenJDK11U-static-libs-musl_x64_alpine-linux_hotspot_11.0.13_8.tar.gz
OpenJDK11U-static-libs-musl_x64_alpine-linux_hotspot_11.0.13_8.tar.gz: OK
tmp.pLplZRHBjQ ❯❯❯ asdf shell java temurin-11.0.13+8
tmp.pLplZRHBjQ ❯❯❯ asdf which javac
unknown command: javac. Perhaps you have to reshim?
✘ tmp.pLplZRHBjQ ❯❯❯ asdf where java
/home/ben/.asdf/installs/java/temurin-11.0.13+8
tmp.pLplZRHBjQ ❯❯❯ exa -T $(asdf where java)
/home/ben/.asdf/installs/java/temurin-11.0.13+8
└── lib
└── static
└── linux-amd64
└── musl
├── libattach.a
├── libawt.a
├── libawt_headless.a
├── libdt_socket.a
├── libextnet.a
├── libfdlibm.a
├── libfontmanager.a
├── libinstrument.a
├── libj2gss.a
├── libj2pcsc.a
├── libj2pkcs11.a
├── libjaas.a
├── libjava.a
├── libjavajpeg.a
├── libjawt.a
├── libjdwp.a
├── libjimage.a
├── libjli.a
├── libjsig.a
├── libjsound.a
├── liblcms.a
├── libmanagement.a
├── libmanagement_agent.a
├── libmanagement_ext.a
├── libmlib_image.a
├── libnet.a
├── libnio.a
├── libprefs.a
├── librmi.a
├── libsaproc.a
├── libsctp.a
├── libsunec.a
├── libunpack.a
├── libverify.a
└── libzip.a