做网站下载功能wordpress ios源码
news/
2025/9/24 2:03:01/
文章来源:
做网站下载功能,wordpress ios源码,建设网站的制作步骤,网页手游cli命令行界面 demo本系列的第一篇 有关使用Java解析命令行参数的文章介绍了Apache Commons CLI库。 这是本系列中介绍的基于Java的命令行解析库中最古老的#xff0c;而且可能是最常用的之一。 Apache Commons CLI确实显示了它的时代#xff0c;特别是与一些更现代的基于Jav… cli命令行界面 demo 本系列的第一篇 有关使用Java解析命令行参数的文章介绍了Apache Commons CLI库。 这是本系列中介绍的基于Java的命令行解析库中最古老的而且可能是最常用的之一。 Apache Commons CLI确实显示了它的时代特别是与一些更现代的基于Java的命令行处理库相比时。 Mark A. Ziesemer的“ Apache Commons CLI上的CLI库包装”称为MarkUtils-CLI旨在“现代化” Apache Commons CLI并且是本博客文章的主题。 Ziesemer在博客文章“ MarkUtils-CLIApache Commons CLI的注释及更多 ”中写道 我觉得Apache Commons CLI项目卖空了。 我发现它是一个非常全面设计良好的库可以有效地解析命令行。 我观察到的唯一缺点是该项目是在Java 5和注释可用之前开发的。 因此该库不支持注释必须提供的任何功能。 引入MarkUtils的最新功能MarkUtils-CLI是一个库可在Apache Commons CLI和Java注释之间提供有效的桥梁而无需替换成熟的Commons CLI库。 这篇文章使用了与本系列以前的文章“文件”和“详细”命令行选项相似的示例以说明MarkUtils-CLI如何包装Apache Commons CLI并允许通过注释定义选项并提供类型化选项。 在本文中使用MarkUtils-CLI的CliRunner是为了方便。 这些示例的完整源代码清单可在GitHub上找到 。 MarkUtils-CLI的“定义”阶段是应用Parameter注释的地方如下面的代码清单所示。 MarkUtils-CLI的“定义”阶段 Parameter(namef, longNamefile, descriptionPath/name of file, requiredtrue)
public String file;Parameter(namev, longNameverbose, descriptionVerbosity enabled or not, argCount0)
public boolean verbose; 此代码清单显示了如何将“短”选项名称 单个连字符/单个字符和“长”选项名称 双连字符/单词指定为Parameter批注的不同元素。 MarkUtils-CLI创建的“帮助”中可以使用“ description ”元素并且“ required ”注释元素允许您指定必需的选项。 为“详细”指定argCount为零还向解析器指示“详细”选项不需要任何参数。 可以通过CliRunner和Apache Commons CLI CommandLineParser的实例在MarkUtils-CLI中完成“解析”阶段。 在下一个代码清单中对此进行了演示其中将Apache Commons CLI的DefaultParser实例与该类的实例其字段使用Parameter注释进行注释一起传递给CliRunner的构造函数。 MarkUtils-CLI的“解析”阶段 final DefaultParser cmdLineParser new DefaultParser();
final CliRunnerMain cliRunner new CliRunner(cmdLineParser, Main.class); 当使用MarkUtils-CLI的CliRunner方法时“询问”阶段是在Callable的call方法中完成的该方法传递给CliRunner的“ run”方法。 下一个代码清单中显示了“ call”方法的实现 在GitHub的完整源代码清单中提供了将拥有的Callable传递给CliRunner的“ run”方法的代码 。 MarkUtils-CLI的“审讯”阶段 Override
public Integer call() throws Exception
{out.println(File path/name is file and verbosity is verbose);return file ! null ? 0 : -1;
} 接下来的两个屏幕快照演示了到目前为止显示的示例。 第一张图片显示了当没有提供所需的“文件”选项时生成的帮助信息。 第二张图片描绘了针对“文件”和“详细”的短名称和长名称选项的各种组合的示例代码的行为。 选择框架或库来帮助Java进行命令行解析时需要考虑MarkUtils-CLI的特征。 MarkUtils-CLI是开源的并根据GNU通用公共许可证版本3 获得 许可 。 一些 尤其是企业看来是不舒服与GPLv3的许可证。 MarkUtils-CLI可作为单独的JAR获得但从概念上讲它是可从https://java.ziesemer.com/获得的更大MarkUtils的一部分。 com.ziesemer.utils.cli-2017.05.28.jar JAR相对较小大约26 KB但对外部库Apache Commons CLI具有运行时依赖性预期是因为MarkUtils-CLI包装了此库和SLF4J 因为SLF4J为广泛使用的库对于许多人来说这种依赖性可能不是什么大问题。 MarkUtils-CLI需要Java SE 6 。 MarkUtils-CLI的作者向我通知了该库的存在并且似乎正在积极地支持它这对于本系列中的所有库都无法说明。 他已经表示他“致力于响应和解决遇到的任何问题 ” MarkUtils-CLI GitHub Issues Tracker 。 他还指出有95个正在执行的单元测试它们验证了MarkUtils-CLI的功能。 MarkUtils-CLI是Apache Commons CLI的小型包装通过使用批注和命令行选项类型的处理使Apache Commons CLI体验现代化。 MarkUtils-CLI很可能会吸引那些已经在使用Apache Commons CLI的用户并希望享受更轻松的带有注释的选项定义和更多类型安全的选项解析的好处。 该库的优点包括库的当前支持和全面的单元测试。 可能阻止某些人使用该库的问题是其GPL许可证及其对SLF4J的外部依赖关系假定Apache Commons CLI依赖关系不是问题因为它被宣传为Apache Commons CLI的包装器。 其他参考 MarkUtils-CLIApache Commons CLI的注释及更多 主博客文章 MarkUtils-CLI下载 MarkUtils-CLI API文档 Javadoc MarkUtils问题 https://java.ziesemer.com/ 包括MarkUtils-CLI在内的各种Java项目 MarkUtils-CLI SureFire报告 95个单元测试 MarkUtils博客文章 翻译自: https://www.javacodegeeks.com/2017/10/java-command-line-interfaces-part-24-markutils-cli.htmlcli命令行界面 demo
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914550.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!