<分区>
我在我们的代码库中发现了一个命令行实用程序,作者在其中编写了一个自制的命令行解析器,它涉及的代码比实用程序本身更多。我决定将其切换为使用 Apache CLI,并且几乎一切正常。
该实用程序使用尾随参数,因此它看起来像这样:
util --argA=1 --argB=2 foo blah blarg
其中“foo”、“blah”和“blarg”用作参数。
有没有办法处理这种情况?我宁愿不(也可能无权)更改此实用程序的命令行签名。
<分区>
我在我们的代码库中发现了一个命令行实用程序,作者在其中编写了一个自制的命令行解析器,它涉及的代码比实用程序本身更多。我决定将其切换为使用 Apache CLI,并且几乎一切正常。
该实用程序使用尾随参数,因此它看起来像这样:
util --argA=1 --argB=2 foo blah blarg
其中“foo”、“blah”和“blarg”用作参数。
有没有办法处理这种情况?我宁愿不(也可能无权)更改此实用程序的命令行签名。
最佳答案
查看 CommandLine.getArgList() 或 CommandLine.getArgs(),它们都从命令行返回选项未处理的“剩余”项目。
参见 CommandLine javadocs了解详情。
关于java - 使用 Apache commons cli 库尾随 args,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7449798/
相关文章:
java - 为什么 JaCoCo 看到了我的 JUnit 但忽略了我的 Spock 测试?
java - 在Java中的亚马逊产品广告API调用中将联属成员(member)ID放在哪里
node.js - 如何为 Inquirer.js 编写单元测试?
java - 为什么 java.util.Scanner.next() 返回空字符串?
java - DownloadManager 完成下载后无法移动文件
grails - 每个请求只能调用一次 ServletFileUpload.parseRequest() 吗?
java - 当 @SuppressWarnings ("deprecation") 不起作用时如何避免弃用警告?