4

我需要在 Java 和/或 Groovy 中创建一个交互式命令行应用程序来编排一个非常定制的构建和部署过程。

我目前的设想是,结果应该以某种方式感觉就像使用 maven 原型:将有一个“类似向导”的工作流程,在多个阶段提示用户输入。通常在启动应用程序时不会提供所有用户输入(即:用户提供一个 subversion-url,然后应用程序查询 subversion 以获取所有可用标签并将它们显示给用户并提示用户选择一个标签进行构建.. .)

是否有任何 Java/Groovy 库来支持构建这样的命令行应用程序?

到目前为止,我已经找到了 JCommanderGroovy CliBuilder。但是当涉及到“类似向导”的命令行应用程序时,它们似乎没有帮助,即在运行时的多个点查询用户输入。

任何指针将不胜感激......

4

3 回答 3

3

groovysh 在后台使用了一个 java 包jLine。它支持自定义选项卡完成、可保存的命令历史记录和命令行编辑。

我能找到的使用它的功能的最佳示例是here,但其他地方可能有更好的示例。

希望这就是你所追求的?

于 2012-09-20T14:22:16.450 回答
2

我知道这是一个老问题,但也许这会对其他人有所帮助。Spring Shell是一个允许您创建交互式命令行用户界面的工具。

于 2018-03-27T21:29:02.753 回答
1

我会试试 Apache Commons 命令行接口 API。这与您在使用 Ant 之类的工具时看到的设置相同。我不确定您正在寻找的向导方面,但这可能来自您创建的循环,然后从 API 中添加代码来处理输入。

这是 Apache Commons命令行的链接

于 2012-09-20T16:39:37.750 回答