You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (JIRA)" <ji...@apache.org> on 2018/08/14 08:06:02 UTC
[jira] [Closed] (GROOVY-8740) groovy.util.CliBuilder doesn't handle
parse errors correctly
[ https://issues.apache.org/jira/browse/GROOVY-8740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King closed GROOVY-8740.
-----------------------------
> groovy.util.CliBuilder doesn't handle parse errors correctly
> ------------------------------------------------------------
>
> Key: GROOVY-8740
> URL: https://issues.apache.org/jira/browse/GROOVY-8740
> Project: Groovy
> Issue Type: Bug
> Components: groovy-jdk
> Affects Versions: 2.5.1
> Reporter: Роман Донченко
> Assignee: Paul King
> Priority: Major
> Fix For: 3.0.0-alpha-4, 2.5.2
>
>
> In Groovy 2.5, {{groovy.util.CliBuilder}} is a wrapper that delegates to {{groovy.cli.commons.CliBuilder}}. However, this wrapper doesn't correctly handle the case when the arguments fail to be parsed.
> Here's how it works with the real {{CliBuilder}}:
> {code:java}
> groovy:000> options = new groovy.cli.commons.CliBuilder(stopAtNonOption: false).parse(['-x'])
> error: Unrecognized option: -x
> usage: groovy
> ===> null{code}
> And here's what happens with the wrapper:
> {code:java}
> groovy:000> options = new groovy.util.CliBuilder(stopAtNonOption: false).parse(['-x'])
> error: Unrecognized option: -x
> usage: groovy
> ===> groovy.util.OptionAccessor@6fc3e1a4
> groovy:000> options.arguments()
> ERROR java.lang.NullPointerException:
> Cannot invoke method arguments() on null object{code}
> I get an object that pretends to be {{null}}, but isn't. So I can't determine whether the parsing was successful or not.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)