cs_cze
Messages postés13Date d'inscriptionvendredi 11 juillet 2003StatutMembreDernière intervention13 décembre 2005
-
12 déc. 2005 à 16:08
cs_cze
Messages postés13Date d'inscriptionvendredi 11 juillet 2003StatutMembreDernière intervention13 décembre 2005
-
13 déc. 2005 à 10:32
Salut,
je suis en train d'essayer de faire fonctionner la machine virtuelle java (JVM) dans un programme C++ en utilisant la JNI (Java Native Interface).
Dans mon programme je commence par inclure le fichier "jni.h" qui contient les déclarations des fonctions utiles.
Ensuite, pour lancer la JVM, je dois utiliser la commande "JNI_CreateJavaVM(...);"
Et j'ai un probléme de linkage pendant la compilation. Visual Studio .NET 2003 me donne l'erreur suivante :
J'ai bien déclaré la dll "jvm.dll" ("Java\jdk1.5.0_06\jre\bin\server") dans les variables d'environnement de mon programme.
Lorsque je regarde les fonctions qui y sont implémentées avec l'utilitaire "Dependency Walker", je trouve bien des traces de la fonction, mais sous la forme : "JNI_CreateJavaVM"
Dans mon programme, j'ai même tenté de définir la fonction en utilisant la ligne suivante :
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 13 déc. 2005 à 00:17
Ce n'est pas une question de path mais de lib qu'il faut fournir au linker. Si tu n'as pas la lib correspondant à une dll alors faudra obtenir les pointeurs de fonction par GetProcAddress.