2010-04-26 20 views
6

Tengo que grabar una aplicación Java en un CD. Esta aplicación debe ejecutarse en todas las PC con Windows sin ninguna instalación (tampoco JRE debería instalarse).¿Cómo hacer que la aplicación Java sea independiente?

+0

escritorio? – Xorty

+1

Estoy empezando a pensar que esto es esencialmente lo mismo que: http://stackoverflow.com/questions/2258932/embed-a-jre-in-a-windows-executable Ambos tratan sobre la distribución de una aplicación Java como iniciador de Windows .exe (con JRE incluido). – Jonik

+1

No estoy centrado en obtener un archivo .exe. Solo quiero ejecutar jre sin jdk. Lo resolví con un archivo por lotes y startet con el comando jdk/java.exe bla.jar – rakete

Respuesta

5

Supongo que también puede copiar el JRE de la carpeta de programas en el CD. Luego, agregue un script por lotes para usar su JRE "local" para iniciar su aplicación. Eso debería ser suficiente, pero no sé si esto funciona con todas las versiones de Windows.

+0

El problema no es Windows, que felizmente ejecutará un ejecutable Win32 PE desde cualquier lugar. Pero, ¿el JRE hace suposiciones adicionales? – MSalters

4

Tendría que agrupar jre en el disco y crear scripts de inicio. Si no está satisfecho con las secuencias de comandos sencillas de inicio por lotes/shell, puede usar algo como JLauncher para crear un ejecutable "real".

+1

+1. Si una herramienta comercial está bien, install4j es bueno para crear un ejecutable .exe (con JRE incluido) para aplicaciones Java. Ver, por ejemplo, esta respuesta: http://stackoverflow.com/questions/2258932/embed-a-jre-in-a-windows-executable/2258946#2258946 – Jonik

+0

Ah, debería haber recomendado exe4j por la misma compañía en su lugar: http : //www.ej-technologies.com/products/exe4j/overview.html No hay mucha diferencia desde el punto de vista técnico (cuando se trata de hacer launchers), pero cuesta mucho menos que install4j. – Jonik

1

Simplemente grabe también un jre en el CD e inicie la aplicación dentro de un script por lotes, que establece las variables CLASSPATH y JAVA_HOME que apuntan a su jre.

3

La manera más fácil sería incluir una instalación de Java desempaquetada en el CD y usarla para ejecutar la aplicación.

Hay solo AFAIK compiladores de "Java a exe" todavía en el mercado, uno de los cuales (Excelsior JET) es bastante caro, y el otro (GCJ) no funciona en los programas que usan AWT o Swing.

+0

También (al menos) install4j hace "Java to exe". Que yo sepa, es lo mejor de las herramientas de instalador/iniciador de Java. – Jonik

+1

@Jonik: El software al que se refería Michael Borgwardt son compiladores, que crean código nativo a partir de Java-Sources. install4j crea un ejecutable exe para iniciar Java-Bytecode con la JVM adecuada. Eso debería ser suficiente en la mayoría de los casos, pero no es realmente el "Java to exe" que Michael tenía en mente. – Mnementh

+0

@Mnementh, ah, gracias por aclararme. En cuanto a la pregunta original, no creo que OP necesitaría un verdadero "código de Java a nativo". – Jonik

4

JSmooth puede hacer el truco con la agrupación de JRE o la instalación de Java, y es gratis. También puede establecer las propiedades de JVM

Cuestiones relacionadas