Я пытался установить 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
не будет заменен ссылкой"
Наконец найденный решением:
rm /usr/bin/java
update-alternatives --config java
Теперь это работает, удаляя тот набор из двух предметов, это вызывало проблемы. Не знает, имел ли update-alternatives
какой-либо эффект, но последнее предупреждение не показало.
какая работа со мной не использует 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
Я сталкиваюсь с этой проблемой в среде chroot и исправляю ее с помощью этого действия
mount /dev /myroot/dev
mount /proc /myroot/proc
Я встретился с тем же вопросом на CentOS, когда я установил jdk1.8.
Я решил его:
во-первых, необходимо дать файл, выполняют разрешение, затем устанавливают и конфигурируют его.
chmod a+x jdk-8u151-linux-x64.tar.gz
на самом деле, libji.so
файл находится в каталоге
jdk1.8.0_151/jre/lib/amd64/jli/libjli.so
Я встретился с этой проблемой, когда я сделал жесткую ссылку на исполняемый файл Java и попытался выполнить его. Я предполагаю, что это искало свои библиотеки с помощью относительного пути для исполняемого двоичного файла.
Я попробовал обе из этих опций, и каждый работал на меня:
ln -s $(which java) /usr/bin/${my_binary_name}
)У меня была такая же проблема при запуске новой установки 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.