Cómo usar Command Line Interface (CLI) para analizar argumentos de línea de comandos en Java
Analizar código para obtener argumentos de línea de comando puede no ser el trabajo más emocionante, pero a veces es necesario. La próxima vez que necesites examinar los argumentos de línea de comando y las cosas se vuelvan un poco complejas, saca tu confiable kit de herramientas de Java de código abierto y utiliza la Interfaz de Línea de Comando (CLI).
![Cómo usar Command Line Interface (CLI) para analizar argumentos de línea de comandos en Java - Video](https://i.ytimg.com/vi/qiPt1NoyZm0/hqdefault.jpg)
Analizando Argumentos de Línea de Comando con CLI
El proyecto CLI está alojado en Jakarta Commons. Aunque puede ser excesivo si solo tienes uno o dos argumentos, es esencial si tu aplicación toma la mayoría de sus configuraciones desde la línea de comando.
Para usar CLI, necesitas crear una instancia de la clase "Options":
Options opt = new Options();
Con esta instancia de "Options", defines los argumentos de línea de comando que tu aplicación aceptará. Una forma de hacer esto es usando el método "addOption()" de la clase "Options". Llama a este método una vez por cada opción que tu aplicación pueda aceptar.
opt.addOption("h", false, "Mostrar ayuda para esta aplicación");
opt.addOption("u", true, "El nombre de usuario a utilizar");
opt.addOption("dsn", true, "El origen de datos a utilizar");
Una vez que definas los argumentos de tus clases, crea un "CommandLineParser" y analiza el arreglo de cadenas que se le pasó al método principal de tu programa.
BasicParser parser = new BasicParser();
CommandLine cl = parser.parse(opt, args);
Ahora que todos los argumentos son analizados, puedes examinar la instancia "CommandLine" devuelta por el analizador para determinar qué argumentos y valores fueron proporcionados por el usuario.
![](https://newsmatic.com.ar/wp-content/uploads/como-utilizar-jakarta-commons-http-client-para-acceder-a-paginas-web-en-java-1-150x150.png)
if (cl.hasOption("h")) {
HelpFormatter f = new HelpFormatter();
f.printHelp("OptionsTip", opt);
} else {
System.out.println(cl.getOptionValue("u"));
System.out.println(cl.getOptionValue("dsn"));
}
Como puedes ver, puedes usar la clase "HelpFormatter" para generar automáticamente información de uso para tu programa.
Ejemplo de Código Completo
Aquí está el código completo:
import org.apache.commons.cli.BasicParser;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.HelpFormatter;
import org.apache.commons.cli.ParseException;
public class OptionsTip {
public static void main(String args[]) {
try {
Options opt = new Options();
opt.addOption("h", false, "Mostrar ayuda para esta aplicación");
opt.addOption("u", true, "El nombre de usuario a utilizar");
opt.addOption("dsn", true, "El origen de datos a utilizar");
BasicParser parser = new BasicParser();
CommandLine cl = parser.parse(opt, args);
if (cl.hasOption("h")) {
HelpFormatter f = new HelpFormatter();
f.printHelp("OptionsTip", opt);
} else {
System.out.println(cl.getOptionValue("u"));
System.out.println(cl.getOptionValue("dsn"));
}
} catch (ParseException e) {
e.printStackTrace();
}
}
}
Conclusión
CLI simplifica la tarea de analizar argumentos de línea de comando y te libera de una tarea tediosa. Para obtener más información, consulta la documentación.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Cómo usar Command Line Interface (CLI) para analizar argumentos de línea de comandos en Java , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados