Tratamiento de líneas de comando mediante «Commons CLI»

1
15274

Tratamiento de líneas de comando mediante «Commons CLI»

Una tarea que inicialmente suelen realizar la gran mayoría de las aplicaciones es el
análisis de los parámetros con los que el usuario ha invocado la aplicación.
Es este tutorial voy a realizar una presentación de una librería que nos facilitar enormemente esta tarea.

Apache Commons CLI

Apache Commons CLI (Command Line Interface) es una de las útiles librerías que forman parte de Apache Commons.

Esta librería es bastante ligera, unos 35Kb, por lo que no es descartable a pesar de que el análisis de los parámetros se suela realizar únicamente una vez al inicio de la aplicación.

Modo de empleo general

Normalmente el tratamiento de la línea de comandos se realiza en tres pasos:

  1. Definición
  2. Parseo
  3. Análisis del parseo
Definición

En esta etápa se define como será la línea de comando que acepte nuestra aplicación. Esta definición se realiza a través de las clases org.apache.commons.cli.Options y org.apache.commons.cli.Option de la librería

Por ejemplo, en el siguiente fragmento de código, definimos dos parámetros ip y h.

Parseo

En esta etapa la librería analizará automáticamente la línea de comandos según lo definido en la clase Options

Análisis del parseo

En esta etapa, debemos verificar que los valores de los parámetros son correctos, por ejemplo, que un parámetro requerido esté presente y tenga un valor válido.

Un ejemplo

En el siguiente fragmento de código (autocomentado), mostramos una pequeña aplicación cuya línea de comando se compone
de los siguientes parámetros:
-ip address [-port puerto] [err|console] [-help | -h]

En donde el único parámetro requerido es el parámetro ip y en donde no pueden aparecer a la misma vez los parámetros console y error

Algunos ejemplos de invocació a la aplicación para ver la salida

(Suponemos que la librería commons cli está en el CLASSPATH)

Bueno, para terminar, recordaros que esto no es más que un tutorial introductorio a la librería. Si necesitais más información podeis dirigiros a la página oficial del proyecto.

Carlos García Pérez. Creador de MobileTest, un complemento educativo para los profesores y sus alumnos.

cgpcosmad@gmail.com

1 Comentario

Dejar respuesta

Please enter your comment!
Please enter your name here