是否有良好的Java库可以帮助构建交互式shell样式的应用程序?

时间:2009-02-06 18:03:28

标签: java

我需要用Java编写一个简单的shell风格的应用程序。使用一个负责解析命令的库并处理标志和可选/强制参数之类的东西会很好...

内置TAB完成的东西会特别棒。

4 个答案:

答案 0 :(得分:5)

您可以使用JLine进行编辑,使用Apache Commons CLI进行命令行解析。

答案 1 :(得分:3)

答案 2 :(得分:2)

我比Apache Commons CLI更喜欢JewelCLIargs4j

对于几个java CLI选项解析器here,有一个很好的,有点煽动性的综述。

答案 3 :(得分:1)

查看JBoss Forge(https://docs.jboss.org/author/display/FORGE/Home)。

它是一个基于Java CDI插件的构建shell,它可以通过自定义插件进行扩展。 我的情况是我根据Forge(https://github.com/xandrox/forge-gwtplugin)编写了一个GWT插件。

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);
    }
}