是否有任何Java控制台应用程序框架不创建自己的shell

是否有任何Java控制台应用程序框架不创建自己的shell,java,Java,有没有支持用java构建控制台应用程序的框架? 我知道,但这就产生了一个我不需要的外壳 例如,我想创建带注释的命令类,如 @Command(name="c", desc="Copies files from source directory to target directory.") public class MyCopyCommand { @Argument(mandatory=true, desc="source directory") private String source

有没有支持用java构建控制台应用程序的框架? 我知道,但这就产生了一个我不需要的外壳

例如,我想创建带注释的命令类,如

@Command(name="c", desc="Copies files from source directory to target directory.")
public class MyCopyCommand {

  @Argument(mandatory=true, desc="source directory")
  private String sourceDirectory;

  @Argument(mandatory=true, desc="target directory")
  private String targetDirectory;

  @Execute
  public void copy() {
     // copy files  
  }
}
一些执行器类应该处理给定的程序参数并调用适当的命令类


有那样的框架吗?它将与之集成的最佳功能。

还有和。该示例甚至使用了与OP中相同的
@命令
注释。

现在我已经用SpringShell实现了它。如果用命令调用程序,SpringShell不会打开Shell

./myApp=>打开shell

./myApp myCommand=>不打开shell


这正适合我的需要。

怎么样?或者像一个?嗨,艾略特,谢谢你的两个建议。JCurses作为一个窗口工具包不是正确的选择。此外,我找不到这个框架的好文档。很抱歉,ant也不是一个解决方案。我还是不明白你所说的“自己的shell”或框架是什么意思,它有任务调度的抽象。提供“测试运行”框架。感谢您的回答。不幸的是,这是在运行/创建自己的shell。我的应用程序也应该直接在windows shell(cmd)或unix bash上运行,而无需创建自己的shell。