¿Cómo creo un .exe con NetBeans?

Iniciado por |Miguel|, 16 Febrero 2012, 15:53 PM

0 Miembros y 1 Visitante están viendo este tema.

|Miguel|

Hola a todos.

Bueno la cosa es que tengo una aplicación con acceso a un archivo de base de datos de access e interfaz gráfica y me gustaría saber cómo puedo generar un archivo ejecutable .exe (y recalco el exe) de tal forma que con ese único archivo mi aplicación sea ejecutable en cualquier máquina y pueda trabajar sobre esa base de datos (evidentemente, con los datos que tenga cuando compile).

No me vale la opción build ni la clean & build de NB ya que lo que me genera es un .jar y hay equipos que no son capaces de interpretarlos.

Gracias a todos, Saludos grandes y cordiales  ;D

RyogiShiki

#1
Con NetBeans hasta donde sé no puedes crear un exe.

Ten en cuenta que así conviertas tu aplicación Java a un exe la máquina donde lo ejecutes igual tendrá que tener un JRE para correr la aplicación. Generalmente en Windows, cualquier máquina con un JRE es capaz de ejecutar un archivo jar.

Existen herramientas del tipo Excelsior JET, que traducirán el bytecode de tu aplicación a código nativo de la plataforma. El problema con esto, es que al final tu programa puede terminar sin todas las funcionalidades que en un principio lo componían. En este caso no es necesario que la máquina objetivo tenga instalado un JRE

Aquí puedes encontrar una lista de herramientas que transformaran tu aplicación de un jar a un exe. Esto básicamente lo que hace es empaquetar el jar dentro de un exe en ocasiones encriptarlo, y generar los mecanismos para lanzarlo. Ten en cuenta que igual vas a necesitar de máquinas con un JRE o JDK instalado. También es necesario decir que muchas de estas herramientas hace mucho tiempo que no se actualizan y su desarrollo está parado. Otra opción que tienes es crear un instalador para tu aplicación que de una vez instale un JRE (no se si la licencia del JRE lo permita) y tal vez también un launcher en formato exe que se encargue de ejecutar el jar.

Saludos


|Miguel|

Entonces no entiendo nada...

Tengo máquina virtual java instalada en todos los pcs de casa, pero aún así hay algunos equipos en los que ejecuto el .jar y  no se ejecuta... especialmente en las aplicaciones sin GUI (la línea de comandos me devuelve "el comando X no se reconoce como un comando o archivo por lotes ejecutable", o algo así, estoy hablando de memoria)...

Siendo como dices tú, me vale con que sea .jar, porque por lo visto lo mismo me da, si he entendido bien...

Proteus1989

para las aplicaciones sin GUI tienes que ejecutarlas desde consola

java - jar RUTA

RyogiShiki

Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.


Lo que dice proteus es cierto también. Recuerda usar esa forma para ejecutar los programas sin GUI


La otra posibilidad si lo anterior no te sirve, es lo siguiente:

Si el problema es porque no puedes usar por ejemplo el comando "java" o "javac" en un CMD entonces el problema tal vez sea las que las variables de entorno no están correctamente configuradas. Aqui tienes una guia de como configurar dichas variables para utilizar las herramientas de Java desde la consola de comandos.

Saludos


|Miguel|

De todas formas, una aplicación que tengo con GUI funciona... más o menos:

-El icono de la aplicación me lo cambia por el de Java.
-No funcionan las consultas a la BBDD.

Deduzco que el build de NetBeans no se lleva los archivos consigo, supongo.

Ahora le echo un ojo a eso a ver....

RyogiShiki

El build se lleva los archivos con el si están dentro de la estructura de la carpeta src, si los colocas dentro de la carpeta bin no los añade al jar.

Saludos


|Miguel|

#7
Cierto, he probado y me funciona bien. Gracias.
No paras de contestarme cosas de forma más coherente q mi profesor... creo q te debo parte de mi nota jaja

EDITO:  la bbdd sí que funciona perfectamente, pero el icono de la aplicación no, me la cambia por la tacita de java. Eso es una gilipollez como un piano, realmente el dibujo me da igual, pero no llego a entender el porqué (eso si me preocupa más).

RyogiShiki

Cita de: |Miguel| en 16 Febrero 2012, 21:53 PM
Cierto, he probado y me funciona bien. Gracias.
No paras de contestarme cosas de forma más coherente q mi profesor... creo q te debo parte de mi nota jaja

XDD!. Por nada. Estamos para ayudar. Me alegra que se haya solucionado el problema.

Saludos


RyogiShiki

#9
El ícono del Jar no lo puedes cambiar, ya que este no se relaciona con ningún archivo de recursos y es como si fuese un archivo zip al que java se encarga de registrar y asociar el mimetype (extensión y formato del archivo) con un ícono específico, Así que si cambias el icono de un jar has de cambiar el de todos los jars de tu sistema.

Lo que puedes hacer es colocar un ícono en el frame principal de la siguiente forma:

Código (java) [Seleccionar]

URL frameIcon = ClassLoader.getSystemResource("icon.png");
Image imgIcon = Toolkit.getDefaultToolkit().createImage(frameIcon);

this.setIconImage(imgIcon)

Poniedo el código por ejemplo en el constructor de una clase que extienda de un JFrame.

Un ejemplo:

Use esta imagen para el ejemplo: http://www.veryicon.com/icon/png/Application/Glassy%20Software/Azureus.png

Saludos