2009-02-06 7 views
6

Necesito escribir una aplicación de shell simple en Java. Sería bueno usar una biblioteca que se encarga de analizar los comandos y se encarga de elementos como indicadores y parámetros opcionales/obligatorios ...¿Hay buenas bibliotecas de Java que faciliten la construcción de aplicaciones interactivas de estilo shell?

Algo que tiene la función de completar TAB incorporado sería especialmente bueno.

+0

bill the lizard es incorrecto ... no es un duplicado EXACTO ... a menos que esté equivocado, hay una diferencia entre el estilo de shell y las aplicaciones de línea de comandos. – carrier

Respuesta

5

Puede usar JLine para editar y Apache Commons CLI para analizar la línea de comandos.

+0

Eche un vistazo a 'cliche': https://code.google.com/p/cliche/ Super simple y lo suficientemente potente como para cubrir una amplia gama de necesidades. – Benj

3
+0

¿Esto se mantiene activamente? El sitio web no tiene fechas de lanzamiento, y los documentos para la versión 2 aún no están disponibles. –

+0

Últimamente, dicen que va a terminar siendo parte de una versión de J2SE en algún momento, por lo que diría que esta debería ser la respuesta real. – djangofan

2

me gusta mucho más bien JewelCLI o args4j sobre Apache Commons CLI.

Hay una buena, aunque algo inflamatoria, resumen de varias opciones de Java CLI analizadores here.

1

echar un vistazo a JBoss Forge (https://docs.jboss.org/author/display/FORGE/Home).

Es una concha de construcción basada en Java CDI plugins y que es un ser extendido por los plugins personalizados. Mi caso escribí un complemento de GWT basado en Forge (https://github.com/xandrox/forge-gwtplugin).

public class ExamplePlugin implements Plugin { 

    @Inject private ShellPrompt prompt; 

    @Command("run") 
    public void run(PipeOut out, @Option(name="value") final String arg){ 
     out.println("Executed command with value: " + arg); 
    } 
} 
Cuestiones relacionadas