Estoy construyendo una aplicación Java que usa una biblioteca compartida escrita en C++ y compilada para diferentes sistemas operativos. El problema es que esta biblioteca compartida en sí misma depende de una biblioteca adicional que normalmente encuentra en la variable de entorno adecuada (RUTA, VÍA LIBRERA o VÍA LISTA LD).Cargar biblioteca compartida por ruta en tiempo de ejecución
Puedo, pero no quiero, configurar estas variables de entorno. Prefiero cargar las bibliotecas compartidas necesarias desde una ruta dada en tiempo de ejecución, como un complemento. Y no, no quiero ninguna aplicación de inicio que comience un nuevo proceso con un nuevo entorno. ¿Alguien sabe cómo lograr esto?
Sé que esto debe ser posible, ya que una de las bibliotecas que uso es capaz de cargar sus complementos desde una ruta determinada. Por supuesto, prefiero el código independiente de la plataforma, pero si esto no es posible, las soluciones separadas para Windows, Linux y MacOS también lo harían.
EDITAR debería haber mencionado que la biblioteca compartida Me gustaría utilizar es orientado a objetos, lo que significa que una unión de funciones individuales no lo hará.
¿Cómo carga la biblioteca de Java? –
Java Native Access (JNA) – aRestless