maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gordon Henriksen (JIRA)" <>
Subject [jira] Commented: (MNG-1415) quoted arguments are not being protected
Date Thu, 30 Mar 2006 14:00:44 GMT
    [ ] 

Gordon Henriksen commented on MNG-1415:

Yikes! My "bulleted list" was supposed to look like an add/remove unified diff; didn't realize
that Jira was going to go all wiki on my comments. To emphasize, revert ye diff, then in the
various modified 'svn' files:


"$@" (quotes significant) does not do what it looks like; it's equivalent to "$1" "$2" "$3"
"$4" ... "$n". That is, upon expansion, it preserves existing list element boundaries rather
than putting the joined string through word splitting again. man bash or man zsh for more

This one-line change would obviate the need for svn rev 382461 in maven-core/src/main/java/org/apache/maven/cli/,
which is an entirely new set of bugs. (Try building a reference to a file containing a quote
character.) Likewise for the $QUOTED_ARGS variables introduced to the bash scripts. You really
don't want to be in the command-line parsing business...

> quoted arguments are not being protected
> ----------------------------------------
>          Key: MNG-1415
>          URL:
>      Project: Maven 2
>         Type: Bug

>  Environment: Linux
>     Reporter: Matthew Pocock
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.0.3

> Arguments with whitespace protected by quotes are broken up into individual arguments
by maven. It's not happening inside the mvn script - I've echoed the generated command-line
to check that. This same exception is raised regardless of using...
> -x="y z"
> -x=\"y z\"
> -x='y z'
> "-x=y z"
> and several other combinations I can't remember.
> Here's an example failure:
> nmrp3@farnham:~/devel/fluxion/trunk/stack/sql-schema$ ~/m2_home/bin/mvn org.codehaus.mojo:maven-execute-plugin:0.1-SNAPSHOT:resources
-Dexecute.class=org.comparagrid.fluxion.sql.schema.OWLFromSchema -Dexecute.args="-baseURI=fish
> + Error stacktraces are turned on.
> [DEBUG] Building Maven user-level plugin registry from: '/home/nmrp3/.m2/plugin-registry.xml'
> [DEBUG] Building Maven global-level plugin registry from: '/home/nmrp3/m2_home/conf/plugin-registry.xml'
> [INFO] Scanning for projects...
> [DEBUG] Using parent-POM from the project hierarchy at: '../pom.xml' for project: org.comparagrid.fluxion:sql-schema:jar:0.1-SNAPSHOT
> [DEBUG] Skipping disabled repository central
> [DEBUG] Skipping disabled repository central
> [DEBUG] maven-execute-plugin: using locally installed snapshot
> [DEBUG] Retrieving parent-POM from the repository for project: null:maven-execute-plugin:maven-plugin:0.1-SNAPSHOT
> [DEBUG] maven-execute-plugin: using locally installed snapshot
> [INFO] ----------------------------------------------------------------------------
> [INFO] ----------------------------------------------------------------------------
> [INFO] Invalid task 'debug': you must specify a valid lifecycle phase, or a goal in the
format plugin:goal or pluginGroupId:pluginArtifactId:pluginVersion:goal
> [INFO] ----------------------------------------------------------------------------
> [DEBUG] Trace
> org.apache.maven.BuildFailureException: Invalid task 'debug': you must specify a valid
lifecycle phase, or a goal in the format plugin:goal or pluginGroupId:pluginArtifactId:pluginVersion:goal
>         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(
>         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggregationNeeds(
>         at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(
>         at org.apache.maven.DefaultMaven.doExecute(
>         at org.apache.maven.DefaultMaven.execute(
>         at org.apache.maven.cli.MavenCli.main(
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>         at java.lang.reflect.Method.invoke(
>         at org.codehaus.classworlds.Launcher.launchEnhanced(
>         at org.codehaus.classworlds.Launcher.launch(
>         at org.codehaus.classworlds.Launcher.mainWithExitCode(
>         at org.codehaus.classworlds.Launcher.main(
> [INFO] ----------------------------------------------------------------------------
> [INFO] Total time: < 1 second
> [INFO] Finished at: Thu Nov 03 23:35:37 GMT 2005
> [INFO] Final Memory: 1M/3M
> [INFO] ----------------------------------------------------------------------------

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message