JNI и две библиотеки
От: bruth Россия  
Дата: 14.09.09 06:33
Оценка:
Привет всем!

Linux32. Есть java класс, один из методов которого нативный. Метод реализован в библиотекe, которая при старте java-приложения прописана в java.library.path. Реализация метода в библиотеке дергает метод, который определен в другой (сторонней) библиотеке. Вторая библиотека линкуется динамически. Из под среды (Netbeans 6.5.1) все запускается хорошо. Если все собрать (java классы и обе библиотеки при сборке копируются в ../lib относительно исполняемой папки) и запускать руками (java -Djava.library.path=../lib -cp ../lib/XXX.jar MainClass), то получаем ошибку java: symbol lookup error ..., указывающую на метод из второй библиотеки.

Вопрос — как что прописать, чтобы из первой библиотеки корректно вызывать методы второй?

Рустем.
Re: JNI и две библиотеки
От: denis.zhdanov Россия http://denis-zhdanov.blogspot.com/
Дата: 14.09.09 08:32
Оценка:
Здравствуйте, bruth, Вы писали:

B>Привет всем!


B>Linux32. Есть java класс, один из методов которого нативный. Метод реализован в библиотекe, которая при старте java-приложения прописана в java.library.path. Реализация метода в библиотеке дергает метод, который определен в другой (сторонней) библиотеке. Вторая библиотека линкуется динамически. Из под среды (Netbeans 6.5.1) все запускается хорошо. Если все собрать (java классы и обе библиотеки при сборке копируются в ../lib относительно исполняемой папки) и запускать руками (java -Djava.library.path=../lib -cp ../lib/XXX.jar MainClass), то получаем ошибку java: symbol lookup error ..., указывающую на метод из второй библиотеки.


B>Вопрос — как что прописать, чтобы из первой библиотеки корректно вызывать методы второй?


B>Рустем.


LD_LIBRARY_PATH
http://denis-zhdanov.blogspot.com
Re[2]: JNI и две библиотеки
От: Аноним  
Дата: 15.09.09 09:24
Оценка:
Здравствуйте, denis.zhdanov, Вы писали:

DZ>LD_LIBRARY_PATH


Установка путей к первой (моей) и второй (сторонней) библиотеке в LD_LIBRARY_PATH не помогла.
Проблему решил создав symbolic link на сторонную библиотеку в /usr/lib, а путь к моей библиотеки указал в java.library.path
Re[3]: JNI и две библиотеки
От: bruth Россия  
Дата: 15.09.09 09:27
Оценка:
Аноним в предыдущем сообщении — это я
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.