You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Dan Tran (JIRA)" <ji...@codehaus.org> on 2006/04/30 05:26:19 UTC

[jira] Created: (MASSEMBLY-89) outputFileNameMapping broken

outputFileNameMapping broken
----------------------------

         Key: MASSEMBLY-89
         URL: http://jira.codehaus.org/browse/MASSEMBLY-89
     Project: Maven 2.x Assembly Plugin
        Type: Bug

    Versions: 2.1    
    Reporter: Dan Tran
    Priority: Critical
     Fix For: 2.1


Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version

Here is an exmple

  <dependencySets>
    <dependencySet>
      <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
    </dependencySet>
</depenendencySets>

After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64507 ] 

John Casey commented on MASSEMBLY-89:
-------------------------------------

Added two unit tests to the maven-assembly-plugin for this, under BasicAbstractAssemblyMojoFeaturesTest. I cannot reproduce the error.

What am I missing?

I'll give it a day or two, then mark it CANNOT REPRODUCE.

BTW, the SVN revId for this is: 398682

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Priority: Critical
>      Fix For: 2.1

>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Dan Tran (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=all ]

Dan Tran updated MASSEMBLY-89:
------------------------------

    Attachment: pom.xml

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Dan Tran (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=all ]

Dan Tran updated MASSEMBLY-89:
------------------------------

    Attachment: bin.xml

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Dan Tran (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64513 ] 

Dan Tran commented on MASSEMBLY-89:
-----------------------------------

Please place pom.xml and bin.xml on the same directory and run 

mvn package.

both specified dependencies files are mapped into one file .  test.jar

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Jason Chaffee (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64677 ] 

Jason Chaffee commented on MASSEMBLY-89:
----------------------------------------

I just checked out the fix and I still have the same problem.  Am I missing something?

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Jason Chaffee (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64601 ] 

Jason Chaffee commented on MASSEMBLY-89:
----------------------------------------

I just reviewed the added unit tests and they do not use an InterpolationFilterReader to load the assembly descriptors as the AbstractAssemblyMojo does.  See the filterFile(File) method.

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Jason Chaffee (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64678 ] 

Jason Chaffee commented on MASSEMBLY-89:
----------------------------------------

Ignore my last message, it appears there was a glitch with eclipse during the merge and I didn't get part of the update...so, I was missing something.  :)  Sorry.

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Dan Tran (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64510 ] 

Dan Tran commented on MASSEMBLY-89:
-----------------------------------

There are 2 levels of interpolation in assembly files.  The first time when the xml file is read in, the interpolation is by MASSEMBLY-40 which
replace ${artifactId} with the actual artifactid of the pom.    The second time is by the outputFileNameMapping  code which nolong see 
${artifactId}.

However, Let me take a look the test case first.  thanks for looking into it



> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1

>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Jason Chaffee (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=comments#action_64578 ] 

Jason Chaffee commented on MASSEMBLY-89:
----------------------------------------

I am seeing the same behavior when building the assembly plugin from the trunk.  Basically, it is interpolating all ${artifactId} in the assembly descriptor xml and changing them to be the project.artifactId.  For example, in my pom.xml my artifactId is "packger".  Let's say I have two jars in my pom, test-1.0.jar and foo-1.0.jar.  If I use ${artifactId}.${extension} for the outputFileNameMapping I will end up with only one artifact in my bundle and it will have the name packager.jar.  If I use ${artifactId}-${version}.${extension} then I will get the correct behavior and I will see both test-1.0.jar and foo-1.0.jar.  Therefore, it seems the interoplation isn't happening if ${version} is used which is very strange.  

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Closed: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=all ]
     
John Casey closed MASSEMBLY-89:
-------------------------------

    Resolution: Fixed

I fixed this by adding an interpolation-blacklisting of certain elements within the outputFileNameMapping element. This approach is extensible, should we ever have another element with a similar problem. I've also added a unit test for this specific case. My changes can be seen in SVN revision 399323.

Jason: I'm not sure if you noticed where filterFile(..) is called, but it's used for processing file entries in the descriptor, and filtering tokens in those...not in loading the assembly descriptor itself.


> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Assignee: John Casey
>     Priority: Critical
>      Fix For: 2.1
>  Attachments: bin.xml, pom.xml
>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (MASSEMBLY-89) outputFileNameMapping broken

Posted by "Dan Tran (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MASSEMBLY-89?page=all ]

Dan Tran updated MASSEMBLY-89:
------------------------------

    Fix Version: 2.1
    Environment: xp

> outputFileNameMapping broken
> ----------------------------
>
>          Key: MASSEMBLY-89
>          URL: http://jira.codehaus.org/browse/MASSEMBLY-89
>      Project: Maven 2.x Assembly Plugin
>         Type: Bug

>     Versions: 2.1
>  Environment: xp
>     Reporter: Dan Tran
>     Priority: Critical
>      Fix For: 2.1

>
>
> Prior to MASSEMBLY-40, I am able to outputFileNameMapping feature to place all dependency aritifacts into assembly without the version
> Here is an exmple
>   <dependencySets>
>     <dependencySet>
>       <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
>     </dependencySet>
> </depenendencySets>
> After MASSEMBLY40,  All artifact inside a set of dependencySet  is mapped to a single file ${artifactId}.${extention}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira