Ошибка поиска символа Java: /usr/lib64/jvm/java-11-openjdk-11/lib/libnio.so: неопределенный символ: initInetAddressIDs

Я использую openjdk-11 на сервере suse linux. Когда я пытаюсь запустить свою сборку cpp с флагом -64bit, я получаю эту ошибку:

Ошибка поиска символа Java: /usr/lib64/jvm/java-11-openjdk-11/lib/libnio.so: неопределенный символ: initInetAddressIDs

Вот мое предупреждение ldd:

у вас нет разрешения на выполнение для `/usr/lib64/jvm/java-11-openjdk/lib/libnio.so 'linux-vdso.so.1 (0x00007fff32bd7000) libjava.so => ​​/ usr / lib64 / jvm / java -11-openjdk / lib / libjava.so libnet.so => ​​/usr/lib64/jvm/java-11-openjdk/lib/libnet.so libpthread.so.0 => /lib64/libpthread.so.0 libdl. so.2 => /lib64/libdl.so.2 (0x00007f73ee49e000) libc.so.6 => /lib64/libc.so.6 (0x00007f73ee0e4000) libjvm.so => ​​не найдено libverify.so => ​​/ usr / lib64 /jvm/java-11-openjdk/lib/libverify.so /lib64/ld-linux-x86-64.so.2

Я не программист на Java и понятия не имею, что здесь делать. Не мог бы кто-нибудь помочь мне выбраться из этой ямы?


person Muzik    schedule 26.02.2020    source источник
comment
можно попробовать запустить ldd /usr/lib64/jvm/java-11-openjdk-11/lib/libnio.so и опубликовать результат?   -  person nullPointer    schedule 26.02.2020
comment
ldd: предупреждение: у вас нет разрешения на выполнение для `/usr/lib64/jvm/java-11-openjdk/lib/libnio.so 'linux-vdso.so.1 (0x00007fff32bd7000) libjava.so =› / usr / lib64 /jvm/java-11-openjdk/lib/libjava.so libnet.so = ›/usr/lib64/jvm/java-11-openjdk/lib/libnet.so libpthread.so.0 =› /lib64/libpthread.so .0 libdl.so.2 = ›/lib64/libdl.so.2 (0x00007f73ee49e000) libc.so.6 =› /lib64/libc.so.6 (0x00007f73ee0e4000) libjvm.so = ›не найдено libverify.so =› /usr/lib64/jvm/java-11-openjdk/lib/libverify.so /lib64/ld-linux-x86-64.so.2   -  person Muzik    schedule 26.02.2020
comment
@nullPointer Вставил вывод ldd выше   -  person Muzik    schedule 26.02.2020


Ответы (1)


В выходных данных ldd указано, что libjvm.so отсутствует. Попробуйте найти этот файл в своем пути OpenJDK (попробуйте заглянуть в /jre/lib/amd64/server/), а затем попробуйте добавить этот путь в $LD_LIBRARY_PATH

person nullPointer    schedule 26.02.2020
comment
Большое спасибо @nullPointer .. Это сработало. Я только что добавил libjvm.so в LD_LIBRARY_PATH. Это было в пути /usr/lib64/jvm/java-11-openjdk-11/lib/server/libjvm.so .. :) - person Muzik; 27.02.2020