【发布时间】:2016-06-27 09:29:21
【问题描述】:
我正在编写一个 JAVA 控制台应用程序。用户启动 jar 后,他应该得到一个类似于 Linux shell 的命令行,他可以在其中输入命令。这是我以前从未编程过的东西。通常我正在编写 GUI,或者我用一些已解析的参数启动 jar。
基本上我有两个问题:
- 是否有第三方库可以帮助从命令行读取用户输入并解析命令并生成提示?解析在我通常由 Apache Commons CLI 使用的主类中传递的参数。它在这里也使用完整还是有更好的方法?
-
是否有提供“无限输入”的最佳做法?我发现的所有解决方案都是 10 年或更长时间,例如:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); while(true){ System.out.print("Enter String"); String s = br.readLine(); }这仍然是最佳做法还是现在有更好的方法?
【问题讨论】:
-
“要求我们推荐或查找书籍、工具、软件库、教程或其他场外资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引固执己见的答案和垃圾邮件。相反, describe the problem 以及迄今为止为解决它所做的工作。”
-
您对 2 有什么顾虑?一大优势是它不依赖任何外部库...
标签: java command-line-tool apache-commons-cli jline jline2