Hola colegas
Tengo un problema que queria consultar con ustedes:
Estoy empezando a utilizar JNI, hago el archivo .java, lo compilo a .class(con javac), hago el .h(con java -hni...) y el .c que compilo a .so (con gcc).
Pongo todos los archivos (HelloJNI.h, HelloJNI.class y libHelloJNI.so) en el mismo directorio
hago en el prompt LD_LIBRARY_PATH=. y export LD_LIBRARY_PATH
Por ultimo, al hacer java HelloJNI me aparece el siguiente mensaje de error:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no HelloJNI in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java :1682)
at java.lang.Runtime.loadLibrary0(Runtime.java:822)
at java.lang.System.loadLibrary(System.java:992)
at HelloJNI.<clinit>(HelloJNI.java:23)
Si en el promp pongo esto:
java -Djava.library.path=. HelloJNI
funciona correctamente, pero mi duda es:
ESTA ULTIMA es la UNICA forma de hacerlo ?
Tambien probé poner en el codigo
System.setpropertie("java.library.path",".");
antes de cargar la libreria, pero tampoco funciona
si alguien sabe como hacerlo por codigo (o por lo menos sin tener que escribir todo java -Djava.library.path=. CADA VEZ que quiero ejecutar el programa), POR FAVOR que me dé una mano
Desde ya MUCHISIMAS GRACIASS
Carlos