I'm trying to install OpenJDK 8 and OpenJFX 8 on Ubuntu 20.10.
Installing openJFX 8 has always been a little tricky on Ubuntu, but I used to be able to do it using the tip from this SO answer: https://stackoverflow.com/a/56166582/2423283 That used to work fine (I think I was using Ubuntu 19.something), however it appears that recently 8u161-b12-1ubuntu2
was removed.
For some more background information, I'm installing this via a docker file in an automated pipeline. Here are the relevant parts of the Dockerfile:
FROM my.company.internal.registry:443/ubuntu:latest
RUN apt -y update && \
apt -y install \
openjdk-8-jdk \
openjfx=8u161-b12-1ubuntu2 \
libopenjfx-java=8u161-b12-1ubuntu2 \
libopenjfx-jni=8u161-b12-1ubuntu2
This used to run just fine, but now I get:
E: Version '8u161-b12-1ubuntu2' for 'openjfx' was not found
E: Version '8u161-b12-1ubuntu2' for 'libopenjfx-java' was not found
E: Version '8u161-b12-1ubuntu2' for 'libopenjfx-jni' was not found
I've tried changing my ubuntu:latest
to ubuntu:19:10
in my FROM
line in the Dockerfile, but I still got the missing packages errors.
I tried just removing those version restrictions (the =8u161-b12-1ubuntu2
) and I didn't see any errors during the installation, but then when I compiled my code, none of the JavaFX classes could be found.
If you are set on using JDK 8 and JavaFX, I've found it's best to install an OpenJDK that includes JavaFX.
For version 8, not all OpenJDKs include JavaFX (e.g. AdoptOpenJDK). The best ones I have found are
Liberica provides builds for raspberry pi and a wide variety of other architectures. If you need that, Liberica is the way to go.