Я создаю Java-приложение, которое использует общую библиотеку, написанную на C ++ и скомпилированную для разных операционных систем.Проблема в том, что сама эта разделяемая библиотека зависит от дополнительной библиотеки, которую она обычно находит в соответствующей переменной среды (PATH
, LIBRARY_PATH
или LD_LIBRARY_PATH
).
Я могу, но не хочуto - установить эти переменные окружения.Я бы предпочел загрузить необходимые разделяемые библиотеки из заданного пути во время выполнения - как плагин.И нет - я не хочу никаких стартовых приложений, которые запускают новый процесс в новой среде.Кто-нибудь знает, как этого добиться?
Я знаю, что это должно быть возможно, так как одна из используемых мной библиотек способна загружать свои плагины по заданному пути.Конечно, я бы предпочел независимый от платформы код, но если бы это было невозможно, отдельные решения для Windows, Linux и MacOS также сделали бы это.
EDIT Я должен был упомянуть, чторазделяемая библиотека, которую я хотел бы использовать, является объектно-ориентированной, что означает, что привязка отдельных функций этого не сделает.