java - JRE 是否(或将会)包含 CLI 解析器

标签 java command-line-interface

我通常使用已知的 CLI 解析器(外部库):

Apache Commons CLI http://commons.apache.org/cli/ (1.2版)

Java Gems http://code.google.com/p/javagems/

JArgs http://jargs.sourceforge.net/

...

我还没有在标准 Java 库中找到它,我想知道新版本的 Java 是否提供了一种实现,以便我可以保存依赖项。有谁知道是否有类似的东西或计划在未来包含它?

最佳答案

如果当您说“ native ”时,您的意思是“Java 实现包含在 JDK 中”,那么答案是“否”。显然,您始终可以基于 java 和 JDK 提供的数组和字符串操作创建自己的(或多或少简单的)解析器。

关于 java CLI 解析器的选择,我建议您使用 arg4j并可以引用以下讨论:Java library for parsing command-line parameters?

其中一个答案包含很长的库列表。

还有最后一个注释。我不知道你为什么要“保存依赖关系”。使用一种管理依赖项的构建工具(例如 ivy、maven、gradle)并忘记此类问题。如果您想将程序作为单个 jar 进行分发,则可以将所有依赖项与应用程序打包在一起。 maven和gradle都可以做到这一点。如果您想实现最小的 jar 尺寸...做出您的选择:对您来说更重要的是尺寸还是模块化。如今,在大多数情况下,尺寸不再是问题。

关于java - JRE 是否(或将会)包含 CLI 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25993517/

相关文章:

java - Aspose 中的页面方向

java - 如何使 JTable 在 Java 中可编辑

Node.js:从 CLI 执行文件

javascript - 从命令行使用 headless chrome 执行单个 Javascript 文件

Python CLI 不断执行相同的命令?

Objective C 中类似 Java 的接口(interface)

java - 使用反射访问DialogFragment中的一些字段

java - 使用 BeanUtils 或类似工具将非空属性从一个对象复制到另一个对象

.net - UI 和后台线程之间的交叉线程

javascript - NPM 尝试查找 Shell 脚本失败