Running anything with java (even just the java command on its own) yields the error:
java: symbol lookup error: java: undefined symbol: JLI_StringDup
I am in a conda environment with java-jdk and openjdk installed. OS is Red Hat Enterprise Linux Server, version 7.9.
I believe that this JLI_StringDup might have something to do with libjli, so I tried adding paths to LIBRARY_PATH, LD_LIBRARY_PATH, JAVA_LD_LIBRARY_PATH and even PATH (cause why not) to no avail:
PATH=$PATH:<conda-env>/lib/jvm/lib
LIBRARY_PATH=$LIBRARY_PATH:<conda-env>/lib/jvm/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<conda-env>/lib/jvm/lib
JAVA_LD_LIBRARY_PATH=$JAVA_LD_LIBRARY_PATH:<conda-env>/lib/jvm/lib
PATH=$PATH:<conda-env>/jre/lib
LIBRARY_PATH=$LIBRARY_PATH:<conda-env>/jre/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<conda-env>/jre/lib
JAVA_LD_LIBRARY_PATH=$JAVA_LD_LIBRARY_PATH:<conda-env>/jre/lib
PATH=$PATH:<conda-env>/jre/lib/amd64/jli
LIBRARY_PATH=$LIBRARY_PATH:<conda-env>/jre/lib/amd64/jli
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<conda-env>/jre/lib/amd64/jli
JAVA_LD_LIBRARY_PATH=$JAVA_LD_LIBRARY_PATH:<conda-env>/jre/lib/amd64/jli
java
Where is the path to my conda environment, and it returns:
java: symbol lookup error: java: undefined symbol: JLI_StringDup
Does anyone know how to solve this?
I solved this issue and I'm posting in case others encounter the same. This seemed to be due to some conflict between openjdk and java-jdk conda packages. I solved it by:
conda install --force-reinstall java-jdk
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.