2011-08-26 8 views
0

Salut, je suis en train de lancer un projet Eclipse et je suis obtenir l'erreur d'exécution:Insatisfait Link Error Aide Java JNI Eclipse

Exception dans le thread "principal" java.lang.UnsatisfiedLinkError: mywrapperclass.nativemethod() V

Je reçois uniquement le code d'erreur lorsque j'appelle une méthode native de la classe wrapper de ma main. J'ai regardé autour de beaucoup de forum et de blogs/sites Web et n'ai pas pu résoudre ceci. Debug et ma navigation m'ont conduit à penser que le problème réside dans le fait que le projet ne soit pas capable de trouver les méthodes natives au sein de la DLL.

J'ai eu beaucoup de mal à obtenir eclipse pour trouver le fichier .dll et finalement résolu cela en plaçant la DLL dans le dossier system32.

Merci à l'avance

Répondre

2

Project > Properties > Java Build Path

Cliquez sur la flèche du JAR qui a besoin de la bibliothèque de DLL.

Native library location

Vous devez spécifier l'emplacement de la bibliothèque DLL.

+0

Où trouver le fichier JAR qui nécessite la DLL dans la fenêtre Java Build Path? Est-ce sous l'onglet source? Dans la fenêtre source, je vois mon nom de projet/src, que j'ai ensuite ouvert pour trouver locatinon de bibliothèque natif, et puis spécifié à l'emplacement .dll et aucun des répertoires que j'ai essayé ont travaillé –

+0

J'ai été en mesure de supprimer l'UnsatisfiedLinkError par aller dans le chemin de construction Java, ajouter le dossier source avec mes fichiers, puis cliquer sur la flèche de ce dossier et ajouter le même dossier au paramètre d'emplacement de la bibliothèque native, comme décrit ci-dessus. –

0

façon de regrouper Easiest les dll avec le plugin Eclipse est

créer une structure de dossiers sous le plug-in comme celui-ci "os/win32/x86" pour l'architecture x86 et placez vos dll là.

et chargez les bibliothèques comme ceci dans votre code de plugin System.loadLibrary ("Dll name");

+1

Il semble trouver ma DLL il ne peut tout simplement pas accéder aux méthodes natives qu'il doit trouver ... a-t-il besoin des fichiers .exp .lib .pdb avec lui? Ils existent tous dans le projet côte à côte ... –