[
https://issues.apache.org/jira/browse/HADOOP-9660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13695625#comment-13695625
]
Enis Soztutar commented on HADOOP-9660:
---------------------------------------
The problem both affects hadoop and hbase, and all implementations of Tool
interface in other projects. Mainly, -Dkey=value is used to override
configuration parameters from command line. At least 10 different classes use
this to accept command line arguments in HBase, also Hadoop's own FSShell,
JobClient, etc.
What I am trying to solve is that the user should not have to do powershell or
cmd specific workarounds for passing the args. The thing about --% is that the
user have to be aware of this limitation and remember to use this everywhere
she is using -Dkey=value. Moreover, --% does not work with cmd. This means that
the user has to be aware of whether she is using cmd or powershell, and
depending on the shell, use --% or not. I fear this will make life hard for
users as well as QA environments.
> [WINDOWS] Powershell / cmd parses -Dkey=value from command line as [-Dkey,
> value] which breaks GenericsOptionParser
> -------------------------------------------------------------------------------------------------------------------
>
> Key: HADOOP-9660
> URL: https://issues.apache.org/jira/browse/HADOOP-9660
> Project: Hadoop Common
> Issue Type: Bug
> Components: scripts, util
> Reporter: Enis Soztutar
> Assignee: Enis Soztutar
> Fix For: 3.0.0, 2.1.0-beta
>
> Attachments: hadoop-9660-branch1_v1.patch,
> hadoop-9660-branch2_v1.patch
>
>
> When parsing parameters to a class implementing Tool, and using ToolRunner,
> we can pass
> {code}
> bin/hadoop <tool_class> -Dkey=value
> {code}
> However, powershell parses the '=' sign itself, and sends it to java as
> ["-Dkey", "value"] which breaks GenericOptionsParser.
> Using "-Dkey=value" or '-Dkey=value' does not fix the problem. The only
> workaround seems to trick PS by using:
> '"-Dkey=value"' (single + double quote)
> In cmd, "-Dkey=value" works, but not '"-Dkey=value"'.
> http://stackoverflow.com/questions/4940375/how-do-i-pass-an-equal-sign-when-calling-a-batch-script-in-powershell
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira