[ 
https://issues.apache.org/jira/browse/EXEC-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12662997#action_12662997
 ] 

Kai Hu commented on EXEC-36:
----------------------------

first, sorry for the bad format. thanks for formatting for me

+) arg[0] should not be "./script/jrake", I think "./script/jrake" should be 
returned from commandLine.getExecutable() or something like this.
+) I fully understand it is not recommented, but if this library is targeting 
for reduce the pain of dealing with command/process, then I think it is 
something this api need to provide, since I do not think there is any api can 
handle it correctly and that is part of the core-value of this api(Ant is using 
exactly same way to parse it, so it has the same bug)if you guys can ship with 
it, it will be the silver bullet for command/process.

cheers


> CommandLine does not work with double quote or single quote correctly
> ---------------------------------------------------------------------
>
>                 Key: EXEC-36
>                 URL: https://issues.apache.org/jira/browse/EXEC-36
>             Project: Commons Exec
>          Issue Type: Bug
>    Affects Versions: 1.0
>         Environment: Ubuntu 704, JDK1.6
>            Reporter: Kai Hu
>            Assignee: Siegfried Goeschl
>            Priority: Critical
>
> Please review and run the following junit test, either apache ant or apache 
> exec does not handle the qoute in the arguments correctly.
>    @Test
>     public void shouldHandleTheDoubelQuote() throws Exception {
>         String commandline = "./script/jrake cruise:publish_installers "
>                 + "INSTALLER_VERSION=unstable_2_1 "
>                 + "INSTALLER_PATH=\"/var/lib/ cruise-agent/installers\" "
>                 + "INSTALLER_DOWNLOAD_SERVER='something'"
>                 + "WITHOUT_HELP_DOC=true";
>         CommandLine line = CommandLine.parse(commandline);
>         String[] args  = line.getArguments();
>         assertThat(args[0], is("cruise:publish_installers"));
>         assertThat(args[1], is("INSTALLER_VERSION=unstable_2_1"));
>         assertThat(args[2], is("INSTALLER_PATH=\"/var/lib/ 
> cruise-agent/installers\""));
>         assertThat(args[3], is("INSTALLER_DOWNLOAD_SERVER='something'"));
>         assertThat(args[4], is("WITHOUT_HELP_DOC=true"));
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to