Pregunta

Estoy tratando de ajustar mi jar como un exe usando launch4j. Sin embargo, estoy usando la biblioteca lwjgl y tengo problemas para vincular los dll nativos. Mi estructura de directorios es la siguiente:

Tengo un directorio superior que contiene la siguiente ruta: top / lib / lwjgl / native / win32 donde se encuentran mis archivos dll de lwjgl.

También hay un directorio dist que contiene mi jar top / dist / myapp.jar

Puedo ejecutar mi programa desde la línea de comandos dentro del directorio dist usando el siguiente comando:

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

y funciona perfectamente. Ahora definí mi archivo xml launch4j para que resida dentro del directorio dist con una opción de línea de comandos de -ea -Djava.library.path = .. / lib / lwjgl / native / win32

Sin embargo, cuando intento ejecutar el archivo exe obtengo un error de enlace insatisfecho. (Lo que significa que no puede encontrar mis dlls lwjgl).

He intentado definir esto de varias maneras diferentes. Definí el changeir como ../ y utilicé -ea -Djava.library.path = lib / lwjgl / native / win32, así como intentar mover mi exe al directorio superior y usar /dist/app.jar y la ruta lib y nada parece estar funcionando.

¿Alguien ha tenido un problema similar a esto antes? ¿Cómo puedo hacer que launch4j reconozca mi ruta dll?

gracias.

¿Fue útil?

Solución

Evito este problema copiando todos los archivos nativos (.ddl) al " top " dir al lado del juego exe.

Otros consejos

En los foros de launch4j esto se preguntó en relación con SWT que requiere dll. Consulte this o esto o busque cómo otros trataron los problemas de SWT.

¿Intentaste pasar el parámetro d32 jvm param mientras construías el jarro?

Así es como lo haces

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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top