2010-03-15 13 views
5

Estoy tratando de agrupar un JRE con mi archivo jar para que pueda ejecutar mi aplicación en cualquier computadora con Windows, independientemente de si tiene Java o no. El manual JSmooth dice:Pregunta JSmooth sobre la agrupación de un JRE

For the option to work correctly, you have to put a JRE in a directory near the EXE (generally in a subdirectory called "jre" or whatever). Once the exe is generated, it will FIRST try to locate the JRE at the location mentioned. If it can't be found there, then it will fallback in the normal jre look-up mode (search for a jre or a jdk in the Windows registry or in commonly-used environment variables). There is no JVM-version check when using a bundled JRE, as the packager is supposed to bundle a suitable JVM for the application.

¿Quiere decir esto que la subcarpeta JRE debe incluirse en el frasco, ser su propio frasco separado, o poner en la carpeta que viene junto con el exe? Si se supone que está en una carpeta con el exe, ¿cómo puedo especificar la ruta relativa a la subcarpeta jre?

Mis directorios son los siguientes:

configuración/

-jre/

-myprogram.exe

Intenté usar ..\jre, .\jre, ..\setup\jre en la pantalla GUI, pero ninguno de ellos funcionó.

Cualquier idea o cliente potencial sería muy apreciada. ¡Muchas gracias!

EDITAR: cuando probé jre (y ..\jre Creo), recibí el siguiente mensaje de error de Windows cuando intenté ejecutarlo "MyProgram.exe ha dejado de funcionar". Cuando miro los detalles del problema, dice APPCRASH y el nombre del módulo de falla es jvm.dll

+0

¿Qué tal "jre"? Windows asume rutas relativas a la carpeta actual a menos que se indique lo contrario. –

+0

cuando utilicé. \ Jre, el programa lo cambió a jre simple, y todavía no funcionó. Lo intentaré de nuevo aunque – chama

+0

aún no funcionó. – chama

Respuesta

0

has necesitado Launch4J (http://launch4j.sourceforge.net/), cambiamos de JSmooth a este hace un tiempo, ya que era más arriba hasta la fecha y tenía más características.

Pero, coloque la carpeta jre en la misma carpeta que el .exe, luego use jre \ como la ruta de acceso a ella. Sin embargo, deberá asegurarse de que la carpeta de trabajo de .exe sea la carpeta de instalación. Y asegúrate de tener un JRE completo en la carpeta jre.

0

sólo hay que poner la carpeta "jre" al lado del exe, y escribe "jre" (sin comillas) en la interfaz gráfica de usuario de JSmooth