JEP 293: Guidelines for JDK Command-Line Tool Options

Dan Smith daniel.smith at
Fri Jul 8 15:34:57 UTC 2016

> On Jul 8, 2016, at 8:01 AM, Jonathan Gibbons <jonathan.gibbons at> wrote:
> On 07/07/2016 11:07 PM, Dan Smith wrote:
>> A suggestion for clarifying the text: I was confused about whether "may" refers to choices that the tool developer is allowed to make, or choices that the end user is allowed to make.
>> For example: "Options can require an argument to be provided. For a long-form options, the argument may be separated from the option name by either white space or '='."
>> Is the idea that the tool should support '=' as an alias for white space, or that the tool choose which form it wants to support?  I'm guessing the latter, but I'm not totally confident in that guess.
>> —Dan
> It means that, as you put it, "=" is an alias for white-space, so that you can use either of the following forms:
>    --module-path my:module:path
>    --module-path=my:module:path

Okay, good to know.  So I suggest updating the text to make clear that "may" means a choice the end user makes, and the tool is meant to support both.  (Other uses of "may" or similar words are also potentially ambiguous and could use some extra scrutiny.)


More information about the core-libs-dev mailing list