You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by "Lacoste, Dana" <da...@hp.com> on 2007/04/13 01:30:10 UTC

Problem with maven-assembly-plugin 2.2-beta-1

With assembly plugin 2.2-beta-1, unpacked packages aren't
being handled consistently with how 2.1 worked.

Specifically, if I have an assembly which has a dependency
which is unpacked, it is unpacked into "dependency-name/",
as if the dependency had includeBaseDirectory set to true
(even though it's false)

Can we revert back to the 2.1 behaviour?  Is this a bug or
is it a new flag which needs to be added?

Example:

pom.xml:
...
    <dependency>
      <groupId>com.domain.package1</groupId>
      <artifactId>package1</artifactId>
      <version>1.0</version>
      <type>zip</type>
    </dependency>
...
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <descriptors>
            <descriptor>package-dist.xml</descriptor>
          </descriptors>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>attached</goal>
            </goals>
          </execution>
        </executions>
      </plugin>


package-dist.xml:
<?xml version="1.0"?>
<assembly>
  <id>bin</id>
  <formats>
    <format>zip</format>
  </formats>
  <includeBaseDirectory>true</includeBaseDirectory>
  <dependencySets>
    <dependencySet>
      <unpack>true</unpack>
      <outputDirectory>outputDir</outputDirectory>
      <includes>
        <include>com.domain.package1</include>
      </includes>
    </dependencySet>

This creates "outputDir/package-1.0.zip/files" where
"files" is the content of package-1.0.zip if I unzip
it manually (package-1.0.zip does NOT have the
IncludeBaseDirectory set and does NOT contain the
"package-1.0.zip" directory, but assembly 2.2-beta-1
seems to be adding this for me.

With 2.1 I get "outputDir/files" which is what I need :)

I've fixed this by forcing "<version>2.1</version>"
and I agree that we should all be setting our version
numbers for our plugins, but I'm curious if this change
was intentional or a bug :)

--
Dana Lacoste
Software Design Engineer
HP Software
http://www.hp.com/go/software

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: Problem with maven-assembly-plugin 2.2-beta-1

Posted by "Lacoste, Dana" <da...@hp.com>.
Cool, that fixed it, thanks!

It does seem redundant, though, having an outputDirectory and an
outputFileNameMapping both (basically) affecting the same thing:
where do unpacks go to?

Oh well, it works now!

--
Dana Lacoste

-----Original Message-----
From: John Casey [mailto:casey.john.d@gmail.com] 
Sent: Thursday, April 12, 2007 4:35 PM
To: Maven Users List
Subject: Re: Problem with maven-assembly-plugin 2.2-beta-1

This is reported in MASSEMBLY-179 (
http://jira.codehaus.org/browse/MASSEMBLY-179), and the workaround is to
add the following to your dependencySet:

<outputFileNameMapping></outputFileNameMapping>

That should fix your problem.

-john

On 4/12/07, Lacoste, Dana <da...@hp.com> wrote:
>
> With assembly plugin 2.2-beta-1, unpacked packages aren't being 
> handled consistently with how 2.1 worked.
>
> Specifically, if I have an assembly which has a dependency which is 
> unpacked, it is unpacked into "dependency-name/", as if the dependency

> had includeBaseDirectory set to true (even though it's false)
>
> Can we revert back to the 2.1 behaviour?  Is this a bug or is it a new

> flag which needs to be added?
>
> Example:
>
> pom.xml:
> ...
>     <dependency>
>       <groupId>com.domain.package1</groupId>
>       <artifactId>package1</artifactId>
>       <version>1.0</version>
>       <type>zip</type>
>     </dependency>
> ...
>       <plugin>
>         <artifactId>maven-assembly-plugin</artifactId>
>         <configuration>
>           <descriptors>
>             <descriptor>package-dist.xml</descriptor>
>           </descriptors>
>         </configuration>
>         <executions>
>           <execution>
>             <id>make-assembly</id>
>             <phase>package</phase>
>             <goals>
>               <goal>attached</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
>
>
> package-dist.xml:
> <?xml version="1.0"?>
> <assembly>
>   <id>bin</id>
>   <formats>
>     <format>zip</format>
>   </formats>
>   <includeBaseDirectory>true</includeBaseDirectory>
>   <dependencySets>
>     <dependencySet>
>       <unpack>true</unpack>
>       <outputDirectory>outputDir</outputDirectory>
>       <includes>
>         <include>com.domain.package1</include>
>       </includes>
>     </dependencySet>
>
> This creates "outputDir/package-1.0.zip/files" where "files" is the 
> content of package-1.0.zip if I unzip it manually (package-1.0.zip 
> does NOT have the IncludeBaseDirectory set and does NOT contain the 
> "package-1.0.zip" directory, but assembly 2.2-beta-1 seems to be 
> adding this for me.
>
> With 2.1 I get "outputDir/files" which is what I need :)
>
> I've fixed this by forcing "<version>2.1</version>"
> and I agree that we should all be setting our version numbers for our 
> plugins, but I'm curious if this change was intentional or a bug :)
>
> --
> Dana Lacoste
> Software Design Engineer
> HP Software
> http://www.hp.com/go/software
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Problem with maven-assembly-plugin 2.2-beta-1

Posted by John Casey <ca...@gmail.com>.
This is reported in MASSEMBLY-179 (
http://jira.codehaus.org/browse/MASSEMBLY-179), and the workaround is to add
the following to your dependencySet:

<outputFileNameMapping></outputFileNameMapping>

That should fix your problem.

-john

On 4/12/07, Lacoste, Dana <da...@hp.com> wrote:
>
> With assembly plugin 2.2-beta-1, unpacked packages aren't
> being handled consistently with how 2.1 worked.
>
> Specifically, if I have an assembly which has a dependency
> which is unpacked, it is unpacked into "dependency-name/",
> as if the dependency had includeBaseDirectory set to true
> (even though it's false)
>
> Can we revert back to the 2.1 behaviour?  Is this a bug or
> is it a new flag which needs to be added?
>
> Example:
>
> pom.xml:
> ...
>     <dependency>
>       <groupId>com.domain.package1</groupId>
>       <artifactId>package1</artifactId>
>       <version>1.0</version>
>       <type>zip</type>
>     </dependency>
> ...
>       <plugin>
>         <artifactId>maven-assembly-plugin</artifactId>
>         <configuration>
>           <descriptors>
>             <descriptor>package-dist.xml</descriptor>
>           </descriptors>
>         </configuration>
>         <executions>
>           <execution>
>             <id>make-assembly</id>
>             <phase>package</phase>
>             <goals>
>               <goal>attached</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
>
>
> package-dist.xml:
> <?xml version="1.0"?>
> <assembly>
>   <id>bin</id>
>   <formats>
>     <format>zip</format>
>   </formats>
>   <includeBaseDirectory>true</includeBaseDirectory>
>   <dependencySets>
>     <dependencySet>
>       <unpack>true</unpack>
>       <outputDirectory>outputDir</outputDirectory>
>       <includes>
>         <include>com.domain.package1</include>
>       </includes>
>     </dependencySet>
>
> This creates "outputDir/package-1.0.zip/files" where
> "files" is the content of package-1.0.zip if I unzip
> it manually (package-1.0.zip does NOT have the
> IncludeBaseDirectory set and does NOT contain the
> "package-1.0.zip" directory, but assembly 2.2-beta-1
> seems to be adding this for me.
>
> With 2.1 I get "outputDir/files" which is what I need :)
>
> I've fixed this by forcing "<version>2.1</version>"
> and I agree that we should all be setting our version
> numbers for our plugins, but I'm curious if this change
> was intentional or a bug :)
>
> --
> Dana Lacoste
> Software Design Engineer
> HP Software
> http://www.hp.com/go/software
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>