imagej / imagej-launcher

The ImageJ native launcher
https://imagej.net/learn/launcher
BSD 2-Clause "Simplified" License
21 stars 18 forks source link

imagej-launcher 6.0.2 fails with Java 11 on Ubuntu #89

Closed ctrueden closed 4 months ago

ctrueden commented 2 years ago
$ ./ImageJ-linux64 --java-home=/usr/lib/jvm/java-11-openjdk-amd64
Could not load Java library '/usr/lib/jvm/java-11-openjdk-amd64/lib/amd64/server/libjvm.so': /usr/lib/jvm/java-11-openjdk-amd64/lib/amd64/server/libjvm.so: cannot open shared object file: No such file or directory
Warning: falling back to System JVM
ctrueden commented 2 years ago

Also fails with Zulu 11.0.7:

$ ./ImageJ-linux64 --java-home=/home/curtis/Java/linux64/zulu-11.0.7
Could not load Java library '/home/curtis/Java/linux64/zulu-11.0.7/lib/amd64/server/libjvm.so': /home/curtis/Java/linux64/zulu-11.0.7/lib/amd64/server/libjvm.so: cannot open shared object file: No such file or directory
Warning: falling back to System JVM

And similar problems with all Java 11 JDKs I tried.

set_java_home:
    absolute_java_home -> /home/curtis/Java/linux64/adopt-11.0.8.10
Available RAM: 24989MB, using 3/4 of that: 18742MB
java -Dpython.cachedir.skip=true -Dplugins.dir=/home/curtis/Applications/Fiji.app -Xmx18742m -Dimagej.splash=true -Djava.class.path=/home/curtis/Applications/Fiji.app/jars/imagej-launcher-6.0.1.jar -Dimagej.dir=/home/curtis/Applications/Fiji.app -Dij.dir=/home/curtis/Applications/Fiji.app -Dfiji.dir=/home/curtis/Applications/Fiji.app -Dfiji.defaultLibPath=lib/amd64/server/libjvm.so -Dfiji.executable=./ImageJ-linux64 -Dij.executable=./ImageJ-linux64 -Djava.library.path=/home/curtis/Applications/Fiji.app/lib/linux-amd64:/home/curtis/Applications/Fiji.app/mm/linux-amd64:/home/curtis/Applications/Fiji.app/lib/linux64 -Dscijava.context.strict=false -Dpython.console.encoding=UTF-8 -Dij.debug=true -Dscijava.log.level=debug net.imagej.launcher.ClassLauncher -ijjarpath jars -ijjarpath plugins net.imagej.Main
Running XInitThreads

get_jre_home:
    get_java_home:
        Using absolute_java_home: /home/curtis/Java/linux64/adopt-11.0.8.10
    Setting jre to /home/curtis/Java/linux64/adopt-11.0.8.10
    JAVA_HOME appears to be a JRE: '/home/curtis/Java/linux64/adopt-11.0.8.10'
get_jre_home:
    get_jre_home: Returning /home/curtis/Java/linux64/adopt-11.0.8.10
Using JAVA_HOME /home/curtis/Java/linux64/adopt-11.0.8.10
Opening Java library /home/curtis/Java/linux64/adopt-11.0.8.10/lib/amd64/server/libjvm.so
Could not open '/home/curtis/Java/linux64/adopt-11.0.8.10/lib/amd64/server/libjvm.so'
Could not load Java library '/home/curtis/Java/linux64/adopt-11.0.8.10/lib/amd64/server/libjvm.so': /home/curtis/Java/linux64/adopt-11.0.8.10/lib/amd64/server/libjvm.so: cannot open shared object file: No such file or directory
Warning: falling back to System JVM

The correct path is lib/server, not lib/amd64/server. But I'm confused because ecaeceb625b7cf43467afacea8c545a7f6615f46 already tries to account for that. Somehow it's not working, though.

ctrueden commented 4 months ago

We are switching the launcher to a new one we made called Jaunch. It does not have this problem.