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

Cambiar plataforma JDK en Netbeans

Cambiar plataforma JDK en Netbeans

Es recomendable tener actualizado la Maquina Virtual Java de nuestro equipo para poder disfrutar de las mejoras que trae...

Aplicaciones java con Maven

Aplicaciones java con Maven

¿Qué es Maven? Maven es una herramienta de software para la gestión y construcción de proyectos Java. Provee un conjunto...

Método de la Regla Falsa o Regula Falsi

Método de la Regla Falsa o Regula Falsi

Este método, también conocido como método de interpolación lineal, es un método iterativo de resolución numérica de ecua...

Cargar fuente TTF

Cargar fuente TTF

Necesitamos: Android Studio 2 tipos de fuente TTF Agregar Archivo de fuente al proyecto Paso 1: Crear carpeta assets Cli...

PanoramaImageView: Vista panorámica

PanoramaImageView: Vista panorámica

En este post haremos uso de PanoramaImageView para agregar a una aplicación android, una vista panorámica de 180° y 360°...

Impresión de Interfaz Gráfica de Usuario

Impresión de Interfaz Gráfica de Usuario

En este post veremos como imprimir secciones de un formulario en java implementando la Interface Printable. La clase que...

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

En un post anterior conocimos una herramienta Open Source con un conjunto de herramientas para el trabajo con imágenes e...

ImageMagick es un software de código abierto multiplataforma que contiene una serie de herramientas para leer, mostrar,...

OCR (Optical Character Recognition) en español, Reconociminto Optico de Caracteres, es el proceso por el cual  se extrae...

La misión espacial de la NASA, el Mars  2020 Rover Mission esta proyectada para lanzarse en julio de 2020 y su llegada s...

Android Bolivia

MAUS