Как сделать доступным libgthread-2.0.so.0 внутри Docker Container
Я пытаюсь загрузить нативную библиотеку JNI внутри приложения весенней загрузки. Она прекрасно загружается, когда я запускаю ее из eclipse, предоставляя -Djava.library.path={path_to_mynativelib}
, как аргумент VM, но когда я пытаюсь запустить приложение, используя файл docker-compose и предоставляя те же аргументы VM, что и JAVA_OPTS: "-Djava.library.path={path_nativelib_inside_docker_container}"
после запуска приложения выдает исключение не загрузки т.е. Error loading shared library libgthread-2.0.so.0: No such file or directory
после отладки обнаружил, что libgthread-2.0.so.0
доступно в моем хосте Linux на пути /usr/lib64/libgthread-2.0.so.0
поэтому в eclipse он не выдает никаких исключений, как я могу загрузить эту библиотеку внутри контейнера Docker
0 ответов
Обязательно установите libglib2.0-0
внутри вашего контейнера Docker. Как только он появится, убедитесь, что он включен.LD_LIBRARY_PATH
. Обратите внимание, что вашJNI
библиотека (которая, вероятно, связана с gthread
) должен иметь возможность видеть библиотеку во время выполнения.