Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Ejercicios / Java / Ejecutar JAR con parámetros de entrada

Ejecutar JAR con parámetros de entrada

Autor jc mouse martes, diciembre 18, 2012

Java nos permite pasar parámetros a una aplicación empaquetada en un *.JAR mediante el MAIN de nuestro programa, pero claro esta, debemos preparar a nuestro programa para que acepte y utilice esas variables, en este tuto implementaremos un programa sencillo que solicitara dos parámetros de entrada los cuales mostrara en pantalla, caso contrario nos muestra un mensaje de error.

Que utilizaremos y que necesitamos saber.

  • IDE Netbeans en cualquiera de sus versiones
  • Conocer del manejo de la consola de windows y de sus comandos MS-DOS

Comencemos.

1. Creamos un nuevo proyecto en netbeans el cual constara de su main respectivo y de un JFrame que llamaremos «interfaz.java»

Sample
– Sample.java
– interfaz.java

2. El Main: Esta clase ejecuta nuestra aplicación java, pero también esta clase tiene como parámetros de entrada un Array de tipo String, es este array el cual contiene las variables que vienen desde el exterior.

Utilizararemos un TRY-CATCH para gestionar los errores que puedan ocurrir (no enviar parámetros)  y caso contrario, se mostrara la interfaz con los parámetros de entrada. Puede verse que en la  forma de llamar a nuestra interfaz, incluimos la variable ARGS, nuestro JFrame creado desde netbeans, no tiene esa variable declarada y por tanto nos dará error, debemos modificar la clase «interfaz.java».

import javax.swing.JOptionPane;
/**
 * @website http://jc-mouse.net/
 * @author Mouse
 */
public class Sample {

    public static void main(String[] args) {
        try{          
            //LLama a la interfaz pasando el array de parametros que entra por pa lariable args
            new interfaz( args ).setVisible(true);            
        }
        catch ( ArrayIndexOutOfBoundsException e )
        {            
            //si no existen parametros muestra error y termina programa
            JOptionPane.showMessageDialog(null,"Error: No se pasaron argumentos. Necesita 2");
            System.exit(0);
        }
    }
}

3. la clase interfaz.java:

Nuestra interfaz consta de un JTextArea (nombre: jTextArea1) donde mostraremos los parámetros de entrada, eso con respecto al diseño exterior, pero como ya dijimos más arriba, debemos modificar la clase en si.

Lo primero que cambiaremos sera el constructor de clase, por defecto, al crear la clase desde netbeans, tiene la siguiente forma:

 public interfaz() {
    initComponents();
 }

Cambiaremos este constructor por:

 public interfaz( String[] args ) {
        initComponents();
        //Se colocan los paramemtros de entrada en el JTextArea
        this.jTextArea1.setText(""
                + "Parametro 1: " + args[0] +"\n"
                + "Parametro 2: " + args[1]
                );
    }

Como se ve, añadimos el array ARGS como parámetro de entrada en el constructor, ademas colocamos las variables del array en el JTextArea. args[0] para el primer elemento, args[1] para el segundo y así sucesivamente.

Pero aun nos falta modificar algo mas, bajamos un poco y buscamos en el editor la siguiente instrucción.

     /* Create and display the form */
     java.awt.EventQueue.invokeLater(new Runnable() {
         public void run() {         
                new interfaz().setVisible(true);
         }

Esta instrucción es la que llama a nuestro JFrame y que seguramente te estará mostrando error, cambiamos un poco su forma, aumentamos las siguientes lineas de código:

        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                String args[] = new String[2];
                new interfaz( args ).setVisible(true);
            }
        });

Explicación: Añadimos un Array con una longitud de 2 elementos, si quisiéramos más valores , solamente modificamos su tamaño.

esta nuevo ARRAY, se lo pasamos al constructor como parámetro de entrada y ya esta todo listo.

Eso es todo, compilamos y construimos el JAR, si lo ejecutamos directamente desde el IDE, nos saldrá una ventana de alerta que nos dice que no tienen parámetros de entrada, eso es lo que declaramos en la clase MAIN.

Para ejecutar esta JAR y pasar los parámetros de entrada, utilizaremos un archivo BATCH el cual ejecutara el JAR desde la linea de comandos y al cual le añadimos los parámetros de entrada a continuación del nombre de la aplicación, de la siguiente forma.

java -jar Sample.jar "Hola Mundo" "Adios Mundo Cruel"

Ahora para ejecutar el archivo *.BAT hay diferentes formas, ya sea directamente desde la consola o creando un script o un exe en .NET por ejemplo, las opciones son varias. En este ejemplo utilizamos la consola de windows.

dale play

TIPS.

SI queremos ejecutar este ejemplo desde el IDE de netbeans, debemos, hacer clic derecho en el proyecto e ir a sus PROPIEDADES, después buscamos la opción RUN y donde dice Arguments (agumentos), se añaden los parámetros de entrada, separados por un espacio cada uno de ellos. Despues ya ejecutamos la aplicación como hacemos siempre.

Ejemplo del tutorial AQUI

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Utiliza 2 bases de datos diferentes en una aplicación parte I

Utiliza 2 bases de datos diferentes en una aplicación parte I

Cuando se desarrolla una aplicación, puede ser un requisito que este tenga soporte para varias tipos de base de datos, s...

AutoDraw: App Inteligente de Google para adivinar lo que estas dibujando

AutoDraw: App Inteligente de Google para adivinar lo que estas dibujando

Google acaba de lanzar AutoDraw, una aplicación que usa la Inteligencia Artificial para adivinar lo que intentas dibujar...

Guardar y Leer imagenes en PostgresSQL

Guardar y Leer imagenes en PostgresSQL

En este tutorial veremos una forma para registrar archivos JPG en una base de datos PostgreSQL y recuperarlos para utili...

Store Procedure: Result Set

Store Procedure: Result Set

Los procedimientos almacenados no solo pueden retornar valores como números, cadenas, etc, sino también datos como los R...

SOAP .:. Cliente android

SOAP .:. Cliente android

En esta oportunidad construiremos una aplicación android que nos permitirá consumir  un servicio web utilizando la libre...

Ejemplo RESTFul Webservice en Java

Ejemplo RESTFul Webservice en Java

En este post construiremos un Servicio Web en Java bajo el estandar REST (Representational State Transfer), el cual hace...

6 comentarios en “Ejecutar JAR con parámetros de entrada”

  1. VIANEY VARGAS dice:

    amigo mouse donde lo encuentro donde esta me podrias ayudar???? con algo???

    1. Mouse dice:

      holas, si necesitas ayuda búscame en facebook 🙂

      1. Fred dice:

        yo te envie mensaje desde mi cuenta de face el año pasado y ni me contestaste u.u por eso veo que aqui si ayudas gggg xD aunque igual necesito comentarte algunas cosas en algun momento te llegara un mensaje de mi parte en el face, lo raro que antes me aparecian dos jc mouse en facebook y enviava los mensajes a esas dos cuentas ahora solo veo uno, saludos y gracias por tus tutoriales son geniales.

        1. Mouse dice:

          gracias men, trato de contestar las preguntas cuando puedo pero a veces leo un mensaje y no tengo la respuesta en ese momento y como la memoria es fragil 🙂 en ocasiones se me olvida dejar una respuesta luego luego 🙂

  2. jannez dice:

    hola
    necesito como exportar un jtable a excel, he mirado varios tutoriales y no encuentro la forma,
    le recomiendo si tiene uno
    gracias
    att: jannez urrego

    1. Mouse dice:

      tomo nota gracias 🙂

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp