Je rencontre quelque difficulté pour faire fonctionner les fonctions native sous linux.
La compilation de mon fichier .java se passe bien (javac MonBazar.java) , de même pour mon fichier.h (javah –jni MonBazar).
Après de nombreux essai j’ai réussi à créer mon fichier .so avec la ligne de commande suivante :
gcc –o libmaBibliotek.so –shared –I/opt/jdk1.5.0_10/include –I/opt/jdk1.5.0_10/include/linux maBibliotek.c
j’ai également ajouter cette ligne suivante dans mon .bash_profile : LD_LIBRARY_PATH=. :$LD_LIBRARY_PATH.
jusque là pas de problème. Mais quand j’exécute mon fichier java ( java MonBazar) il me met l’erreur suivante :
Exception in thread "main" java.lang.UnsatisfiedLinkError :
No maBibliotek in java.library.path
Alors que tous mes fichiers sont situés dans le même répertoire !
Merci de votre aide !
Minus-et-Cortex
Posté le 18/01/2007 18:13:30
Salut!
Peux-tu poster le code de ta bibliothèque native et celui de la classe Java qui se sert de cette bibliothèque.
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking