Ejemplo: Tengo dos objetos compartidos (lo mismo debería aplicarse a .dlls). El primer objeto compartido es de una biblioteca de terceros, lo llamaremos libA.so. Envolví algo de esto con JNI y creé mi propia biblioteca, libB.so. Ahora libB depende de libA.¿Cómo puedo Java iniciar varias bibliotecas nativas dependientes?
Cuando se inicia web, ambas bibliotecas son lugares en algún área de trabajo de webstart. Mi código java intenta cargar libB. En este punto, el cargador del sistema intentará cargar libA que no está en la ruta de la biblioteca del sistema (java.library.path no lo ayudará). El resultado final es que libB tiene un enlace insatisfecho y no se puede usar.
He intentado cargar libA antes de libB, pero eso todavía no funciona. Parece que el SO quiere hacer esa carga por mí. ¿Hay alguna forma en que pueda hacer que este trabajo sea diferente de la compilación estática?
Los cargadores de clases no pueden solucionar el problema ya que el sistema operativo resuelve las dependencias nativas. – basszero