Java: Ошибка, в то время как загрузка совместно использовала библиотеки: libjli.so

Я пытался установить openjdk6, openjdk7, oracle8... Но всегда та же ошибка, когда я хочу выполнить Java, например, с java -version:

Java: ошибка, в то время как загрузка совместно использовала библиотеки: libjli.so: не может открыть файл общего объекта: Никакой такой файл или каталог

Я попробовал символьными ссылками, пытающимися добираться для распознавания libjli.so но это не работало

После удаления всех версий, выполняя шаги, показанные здесь, Как полностью удалить Java?, и установка снова, не может совершить ошибку, исчезают. Даже если я удаляю все это снова, если я пишу в терминале java -version это кадры бросает меня та же ошибка.

Я делаю все это с пользователем sudo.

Спасибо

Править: Использование Ubuntu 14.04 сервер LTS

РЕДАКТИРОВАНИЕ 2: Устанавливая Openjdk7, Oracle7 и Oracle8, с помощью update-alternatives --config java говорит мне, что (на испанском языке, но я попытаюсь перевести, 3 строки информации),

"существует только одна альтернатива в группе ссылок Java в /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java Ничто для конфигурирования."

"альтернативы обновления: предупреждение: принуждение переустановки альтернативы /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java потому что группа ссылок Java повреждается"

"альтернативы обновления: предупреждение: /usr/bin/java не будет заменен ссылкой"

3
задан 13 April 2017 в 15:23

6 ответов

Наконец найденный решением:

rm /usr/bin/java
update-alternatives --config java

Теперь это работает, удаляя тот набор из двух предметов, это вызывало проблемы. Не знает, имел ли update-alternatives какой-либо эффект, но последнее предупреждение не показало.

2
ответ дан 1 December 2019 в 15:24

какая работа со мной не использует Java под

$JAVA_HOME/bin/

, но использование Java под

$JAVA_HOME/jre/bin

, который уже имеет ссылку на недостающий lib.

Это произошло для меня при использовании оракула jdk 8 v 191 наряду с затмением

, и оно действует то же openjdk, который можно использовать

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
0
ответ дан 1 December 2019 в 15:24

Я сталкиваюсь с этой проблемой в среде chroot и исправляю ее с помощью этого действия

mount /dev /myroot/dev
mount /proc /myroot/proc
1
ответ дан 1 December 2019 в 15:24

Я встретился с тем же вопросом на CentOS, когда я установил jdk1.8.

Я решил его:

во-первых, необходимо дать файл, выполняют разрешение, затем устанавливают и конфигурируют его.

chmod a+x jdk-8u151-linux-x64.tar.gz

на самом деле, libji.so файл находится в каталоге

jdk1.8.0_151/jre/lib/amd64/jli/libjli.so
0
ответ дан 1 December 2019 в 15:24

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

Я попробовал обе из этих опций, и каждый работал на меня:

  • Помещение жесткой ссылки в том же каталоге как двоичный файл Java и выполнение его оттуда (/usr/lib/jvm/openjre-8/bin в моем случае)
  • Создание и использование символьной ссылки вместо жесткой ссылки (т.е. с ln -s $(which java) /usr/bin/${my_binary_name})
3
ответ дан 1 December 2019 в 15:24

У меня была такая же проблема при запуске новой установки Arduino IDE
(даже после запуска также скрипта arduino-linux-setup.sh ).

Все было установлено в папку $HOME/Downloads/arduino-1.8.12/.

В этой папке был java/bin/java исполняемый файл, очевидно ищущий ../lib/amd64/jli/libjli.so , поэтому я попытался дать ему один как программную символическую ссылку на /usr/lib/jvm/default-java/lib/jli/libjli.so, и это решило проблему.

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

-1
ответ дан 24 February 2020 в 16:51

Другие вопросы по тегам:

Похожие вопросы: