Question

J'essaie d'envelopper mon bocal en tant qu'exe en utilisant launch4j. Cependant, j'utilise la bibliothèque lwjgl et rencontre des difficultés pour lier les dll natives. Ma structure de répertoire est la suivante:

J'ai un répertoire principal qui contient le chemin suivant: top / lib / lwjgl / native / win32 où sont contenues mes dll lwjgl.

Il existe également un répertoire dist contenant mon fichier jar top / dist / myapp.jar

Je peux exécuter mon programme à partir de la ligne de commande dans le répertoire dist à l'aide de la commande suivante:

java -ea -Djava.library.path = .. / lib / lwjgl / native / win32 -jar app.jar

et cela fonctionne parfaitement. Maintenant, j'ai défini mon fichier XML launch4j comme résidant dans le répertoire dist avec une option en ligne de commande de -ea -Djava.library.path = .. / lib / lwjgl / native / win32

Cependant, lorsque j'essaie d'exécuter le fichier exe, une erreur de lien non satisfaite se produit. (Cela signifie qu'il ne peut pas trouver mes dll lwjgl).

J'ai essayé de définir cela de différentes façons. J'ai défini changesir comme ../ et ai utilisé -ea -Djava.library.path = lib / lwjgl / native / win32, tout en essayant de déplacer mon exe dans le répertoire supérieur et d'utiliser /dist/app.jar et le chemin de la lib et rien ne semble fonctionner.

Quelqu'un at-il déjà eu un problème similaire à celui-ci? Comment puis-je faire en sorte que launch4j reconnaisse mon chemin d'accès à la DLL?

merci.

Était-ce utile?

La solution

Je contourne ce problème en copiant tous les fichiers natifs (.ddl) vers le "haut". dir à côté du fichier exe.

Autres conseils

Sur les forums launch4j, cette question a été posée à propos de SWT qui nécessite des dll. Voir ceci ou this ou recherchez comment d'autres personnes ont traité les problèmes SWT.

Avez-vous essayé d'utiliser le paramètre d32 jvm lors de la construction du fichier.

Voici comment vous le faites

http://www.technimi.com/index.php?do=/group/java/forum/building-an-exe-using-launch4j-for-32-bit-jvm/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top