java.lang.UnsatisfiedLinkError: нет xuggle-xuggler в java.library.path

Я использую Ubuntu 11.04 и Eclipse. Я успешно установил Xuggler, я проверил переменные среды и все, что связано с Linux, в их FAQ: http://wiki.xuggle.comFrequently_Asked_Questions#What.27s_up_with_java.lang.UnsatisfiedLinkError.3F

Я также настроил Eclipse в соответствии с их руководством: http://xuggle.wordpress.com/2009/01/23/how-to-write-your-first-xuggler-application-in-eclipse/

Всякий раз, когда я пытаюсь запустить любой код, использующий Xuggler, я получаю следующую ошибку:

2011-09-14 14:17:30,093 [main] ERROR com.xuggle.ferry.JNILibraryLoader - Could not load library: xuggle-xuggler; version: 3; Visit http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem
Exception in thread "main" java.lang.UnsatisfiedLinkError: no xuggle-xuggler in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681)
    at java.lang.Runtime.loadLibrary0(Runtime.java:840)
    at java.lang.System.loadLibrary(System.java:1047)
    at com.xuggle.ferry.JNILibraryLoader.loadLibrary0(JNILibraryLoader.java:265)
    at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:168)
    at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
    at com.xuggle.xuggler.IContainer.<clinit>(IContainer.java:1457)
    at com.xuggle.mediatool.MediaReader.<init>(MediaReader.java:137)
    at com.xuggle.mediatool.ToolFactory.makeReader(ToolFactory.java:77)
    at recode.main(recode.java:16)

Итак, как решить эту проблему?


person Rauter    schedule 14.09.2011    source источник
comment
Какая у вас командная строка Java?   -  person Miserable Variable    schedule 14.09.2011


Ответы (4)


Я получил ответ/решение от группы Google xuggler-users, спасибо Навину Бхутаде:

solve it by including the Xuggle variables before runing the netbeans like this:
export XUGGLE_HOME=/home/xyzuser/xuggler 
export PATH=$XUGGLE_HOME/lib:$XUGGLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH
/usr/share/netbeans/6.9/bin/./netbeans"

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

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

TLDR: экспортируйте переменные, которые вы получили после установки, запустите Eclipse из терминала.

person Rauter    schedule 15.09.2011
comment
Итак, в конце концов, ваши переменные среды были настроены неправильно? знак равно - person Teddy Yueh; 16.09.2011
comment
Что-то вроде. Кажется, открытие eclipse через ссылку на рабочем столе сотрет их. - person Rauter; 26.09.2011

Вы просто загружаете правильный Xuggle с этой страницы на основе вашей ОС: http://xuggle.googlecode.com/svn/trunk/repo/share/java/xuggle/xuggle-xuggler/5.2/ Затем извлеките файлы lib в домашнюю папку проекта.

person Kuangwei Zhang    schedule 06.02.2013

Я обнаружил, что, хотя у меня могут быть правильно установлены переменные среды, явное включение установочного каталога Xuggler в java.library.path при выполнении избавляет меня от этой проблемы.

i.e. java -Djava.library.path="$XUGGLE_HOME" myExecutable

person Teddy Yueh    schedule 14.09.2011

Причина Может быть недоступность jar-файлов зависимостей или конфликты версий.

Добавление следующих банок в путь к классам отлично сработало для меня:

xuggle-xuggler-5.4.jar
slf4j-api-1.6.4.jar
logback-core-1.0.0.jar
logback-classic-1.0.0.jar

Примечание. Добавьте их в папку библиотеки с помощью параметра «Добавить банку/папку» в netbeans.

person AVA    schedule 05.04.2013