Foro de elhacker.net

Programación => Java => Mensaje iniciado por: demosdm en 24 Julio 2010, 19:48 pm



Título: [SOLUCIONADO] Como generar un .JAR con otro aplicacion hecha en java
Publicado por: demosdm en 24 Julio 2010, 19:48 pm
Hola que tal bueno mi duda es la siguiente si yo tengo un a aplicacion que contiene:

*1 JTEXTFIELD
*1 JBUTTON

y quiero que cuando el usuario ingrese cualquier String y de clicl en el JBUTTON se genere un .JAR que al ejecutarlo muestre un JOPTIONPANE con lo que el usuario ingreso en el JTEXTFIELD de la aplicacion principal, bueno aqui dejo una estructura para que tengan un panorama mas amplio de lo que trato de decir saludos y espero que esto se pueda realizas.


Código
  1. import javax.swing.*;
  2. import java.awt.event.*;
  3. public class demo {
  4.    public static void main(String[] args){
  5.    JFrame frame = new JFrame();
  6.    JDesktopPane escritorio = new JDesktopPane();
  7.    JButton crear = new JButton("CREAR JAR");
  8.    final JTextField mitexto = new JTextField();
  9.  
  10.    mitexto.setBounds(20, 30, 150, 30);
  11.    crear.setBounds(20, 70, 150, 30);
  12.    escritorio.add(mitexto);
  13.    escritorio.add(crear);
  14.    escritorio.setSize(200, 180);
  15.    frame.add(escritorio);
  16.    frame.setSize(200,180);
  17.    frame.setVisible(true);
  18.    frame.setLocationRelativeTo(null);
  19.    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  20.  
  21.    crear.addActionListener(new ActionListener(){
  22.        public void actionPerformed(ActionEvent e){
  23.         // CUANDO DEN CLICK A CREAR JAR COMO SE PODRIA HACER PARA QUE SE GENERE UN JAR
  24.         // CON LO QUE EL USUARIO INGRESO EN EL INPUT Y CUANDO ESTE SE EJECUTE SOLO aparezca
  25.         // EL JOPTIONPANE CON LO QUE EL USUARIO INGRESO?
  26.           JOptionPane.showMessageDialog(null, mitexto.getText());
  27.        }          
  28.     });
  29.    }
  30. }


Título: Re: [Pregunta] Como generar un .JAR con otro aplicacion hecha en java
Publicado por: Leyer en 24 Julio 2010, 21:01 pm
Espero te sirva

http://jleyer.wordpress.com/2010/07/23/generar-un-ejecutable-jar-desde-un-programa/

Un saludo.


Título: Re: [Pregunta] Como generar un .JAR con otro aplicacion hecha en java
Publicado por: danielo- en 25 Julio 2010, 07:00 am
Se me ocirre algo así. haber si te gusta ;)

Código
  1. import javax.swing.*;
  2. import java.awt.event.*;
  3. public class Demo {
  4.    public static void main(String[] args){
  5.  
  6.    //NO te compliques, bastaría con un showInputDialog
  7. String s;
  8. s=JOptionPane.showInputDialog("Nombre del jar");
  9.  
  10.    //Aunque creo que realmentes este es el método que andas buscando
  11.      try {
  12. Runtime.getRuntime().exec("jar -cf "+s+".jar null");  //Aki especificas el comando a ejecutar
  13. }                                    //El string que le pase de parametro es lo que se escribiria en la linea de comandos para crear un jar
  14. catch (Exception e) {
  15. System.out.println("Failed");        
  16. }
  17.  
  18. /*Aunque aun asi flatarian varias cosas, asi como
  19. * cual es la carpeta en donde se encuentran las clases
  20. * La clase main
  21. *mmm....no se me ocurre otra  :)
  22. */
  23.  
  24. //por danyelk_6u5 XD
  25.    }
  26. }
  27.  
  28.  

Saludos!


Título: Re: [Pregunta] Como generar un .JAR con otro aplicacion hecha en java
Publicado por: demosdm en 26 Julio 2010, 01:34 am
Perfecto LEYER con algunas modificaciones en tu clase pude hacer lo que me proponia muchas gracias.

danyelk_6u5 gracias por tu respuesta pero no queria manejar consola ya que quiero una aplicacion autonoma y lo logre gracias a la clase de leyer.

hasta pronto!!


Título: Re: [SOLUCIONADO] Como generar un .JAR con otro aplicacion hecha en java
Publicado por: Leyer en 26 Julio 2010, 04:34 am
Perfecto LEYER con algunas modificaciones en tu clase pude hacer lo que me proponia muchas gracias.

danyelk_6u5 gracias por tu respuesta pero no queria manejar consola ya que quiero una aplicacion autonoma y lo logre gracias a la clase de leyer.

hasta pronto!!

Perfecto ;)