Maven 2.x Assembly Plugin

2-nd <exclude> element of <dependencySets>:<excludes> doesn't work

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 2.2-beta-1
  • Fix Version/s: 2.2-beta-2
  • Component/s: None
  • Labels:
    None
  • Patch Submitted:
    Yes
  • Number of attachments :
    1

Description

I suppose that order of dependencySets:excludes:exclude doesn't make sense.
But it seems that the plugin has a bug – 2-nd <exclude> element of <dependencySets>:<excludes> doesn't work at all!

Having such a dependencySet
<dependencySet>
<unpack>false</unpack>
<excludes>
<exclude>org.eclipse.update.*</exclude>
<exclude>org.eclipse.equinox.http.*</exclude>
</excludes>
</dependencySet>

I receive warning about
[WARNING] The following patterns were never triggered in this artifact exclusion filter:
o 'org.eclipse.equinox.http.*'

When I change the order of exclude elements
<dependencySet>
<unpack>false</unpack>
<excludes>
<exclude>org.eclipse.equinox.http.*</exclude>
<exclude>org.eclipse.update.*</exclude>
</excludes>
</dependencySet>

I receive warning about
[WARNING] The following patterns were never triggered in this artifact exclusion filter:
o 'org.eclipse.update.*'

So, as you can see the both exclude patterns are workable, but 2-nd one doesn't work independently of the element order.

Activity

Hide
Walt Wang added a comment -

The problem seems caused by maven-common-artifact-filters. It returns from a loop to iterate on excludes. So only first exclude take effect. MASSEMBLY-223.patch attached.

Show
Walt Wang added a comment - The problem seems caused by maven-common-artifact-filters. It returns from a loop to iterate on excludes. So only first exclude take effect. MASSEMBLY-223.patch attached.
Hide
Walt Wang added a comment -

The problem seems caused by maven-common-artifact-filters. It returns from a loop to iterate on excludes. So only first exclude take effect

Show
Walt Wang added a comment - The problem seems caused by maven-common-artifact-filters. It returns from a loop to iterate on excludes. So only first exclude take effect
Hide
John Casey added a comment -

Applied, and added unit tests to verify that this is fixed. Thanks!

Show
John Casey added a comment - Applied, and added unit tests to verify that this is fixed. Thanks!

People

Vote (0)
Watch (2)

Dates

  • Created:
    Updated:
    Resolved: