java.lang.UnsatisfiedLinkError: нет cplex122 в java.library.path

Когда я компилирую, я получаю следующие заметки:

Примечание. Некоторые входные файлы используют или переопределяют устаревший API.
Примечание. Перекомпилируйте с параметром -Xlint:deprecation для получения подробной информации.
Примечание. В некоторых входных файлах используются непроверенные или небезопасные операции.
Примечание. Перекомпилируйте с параметром -Xlint: не проверено для деталей.

затем я использую следующую команду для запуска:

java -Djava.library.path=/usr/local/cplex/ILOG/CPLEX_Studio_AcademicRsearch122/cplex/bin/x86-64_sles10_4.1/ -cp lib/jade.jar:lib/jxl.jar:lib/commons-logging-1.1.jar:lib/junit-3.8.1.jar:lib/log4j-1.2.13.jar:lib/poi-3.8-20120326.jar:lib/cplex.jar:classes jade.Boot -gui

он возвращает:

java.lang.UnsatisfiedLinkError: no cplex122 in java.library.path
java.library.path must point to the directory containing the CPLEX shared library
try invoking java with java -Djava.library.path=...

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


person user2001478    schedule 22.01.2013    source источник
comment
Для первого набора предупреждений делайте то, что он говорит, если вы обеспокоены устареванием и общими проблемами программирования в вашем коде.   -  person Code-Apprentice    schedule 23.01.2013
comment
Вы используете 32-разрядную виртуальную машину Java? Это не будет работать с 64-битной dll, что я всегда ошибаюсь, не замечая этого.   -  person Dan    schedule 23.01.2013


Ответы (1)


У меня такая же проблема.

Вам нужно запустить приложение с JRE с той же архитектурой, что и cplex lib. В моем случае я использовал 32-битную библиотеку cplex с 64-битной JRE.

Попробуйте установить другую JRE с другой архитектурой, а затем повторно запустите свою программу с этой другой JRE.

Надеюсь это поможет

person Delfic    schedule 19.05.2015