UnsatisfiedLinkError при попытке загрузить dll в мой проект eclipse

У меня есть файл xxx.dll вместе с парой других dll в этом месте -

'C:\Program Files (x86)\abc\xyz\Librerias'

пытаюсь загрузить этот файл DLL в свой проект, используя

System.loadLibrary("xxx");

добавил этот путь в «Расположение собственной библиотеки» в системной библиотеке JRE в разделе «Настроить путь сборки», но по-прежнему строка, пытающаяся загрузить эту dll, выдает ошибку «UnsatisfiedLinkError».

Я даже пробовал, но все равно остается та же ошибка.

System.load("C:/Program Files (x86)/abc/xyz/Librerias/xxx.dll");

У меня есть последняя версия 32-битной JRE и JDK, добавленная в мой системный путь, и я использую 64-битную машину.

Ах! Похоже, файл не загружается, попробуйте изменить путь на что-то вроде System.load("C:\\Program Files (x86)\\abc\\xyz\\Librerias\\xxx.dll");

robot_alien 19.09.2018 12:44

Нет. Я пробовал это, все та же проблема.

Raviteja Reddy 19.09.2018 13:14

Не могли бы вы проверить, существует ли библиотека xxx.dll по указанному пути? Может быть, есть проблема с разрешением, потому что она находится в пути C:\Program Files? Попробуйте скопировать указанную библиотеку по другому пути, укажите абсолютный путь и повторите попытку. Также обратите внимание, что если библиотека уже загружена вашим приложением и приложение пытается загрузить ее снова, UnsatisfiedLinkError будет брошен JVM.

robot_alien 19.09.2018 17:08

да. Библиотека существует. Это первая dll, которую пытаются загрузить в приложение, поэтому во втором случае нет никаких шансов. Я попытался скопировать их снаружи и указать абсолютный путь, но не повезло. Ответ, который я предоставил, решил проблему. Любые мысли о том, почему такое изменение сработало?

Raviteja Reddy 20.09.2018 06:38
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
4
376
1

Ответы 1

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

это помогло.

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