8

背景

在 Java 中,我想制作一个简单、快速的控制台应用程序,它提供一系列菜单并接受用户输入,然后调用某些方法并输出其他菜单。基本上,我需要创建一个循环:

menu > user selection > action > menu > ...

最终,我在使用 Apache Camel 的集成服务器上使用它。我有一个“快速而肮脏”的应用程序,我用它来练习一些服务器路由作为开发工具。我不想花太多时间在这么简单的事情上。

必须有一个简单的方法来做到这一点。命令行上的控制台和菜单已经存在了几十年!必须有一个Java库可以很好地做到这一点。我只是没找到...

问题

是否有一个库或一些 Apache 实用程序,或者任何可以让创建超级快速、超级简单的控制台菜单变得轻而易举的东西?

例子

使用适当的工具,制作一个功能如下的菜单应该不到 30 分钟
git add -i

也就是说,我需要做一些功能类似于git Interactive commands或任何其他控制台应用程序的东西,并且我想快速完成。


编辑:

下面的建议使用“陈词滥调”效果很好,允许我只注释一些方法并自动构建一个菜单。如果它对某人有帮助,我想包括一些关于让 Cliche 工作的重要说明:

  1. 该项目已移至谷歌代码
  2. 它似乎没有得到维护,但在问题部分jbachorik mavenized 项目!
  3. 以下是我需要对我的 POM 进行的唯一调整:

添加一个回购:

    <repository>
       <id>sonatype-nexus-snapshots</id>
       <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    </repository>

添加依赖:

    <dependency>
        <groupId>com.googlecode.cliche</groupId>
        <artifactId>cliche</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
4

1 回答 1

6

看看陈词滥调

它使用@Command方法注释来快速创建基于控制台的交互式应用程序。它的类型转换器是基本的,但可以配置 Camel 自己的扩展类型转换器来代替使用。它还提供额外的功能,例如列出可用命令和约定驱动的输入缩写。

于 2012-08-06T05:51:40.290 回答