You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Beirtí Ó'Nunáin (JIRA)" <ji...@apache.org> on 2018/01/10 10:22:00 UTC
[jira] [Commented] (MDEP-501) Filtering dependencies does not
retain the order of the unfiltered list
[ https://issues.apache.org/jira/browse/MDEP-501?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16320005#comment-16320005 ]
Beirtí Ó'Nunáin commented on MDEP-501:
--------------------------------------
[~michael-o], [~erling.johan.andersen@gmail.com]
I just checked out the source of 3.0.1 and it looks like a LinkedHashSet is used now. Can someone mark this issue resolved please?
> Filtering dependencies does not retain the order of the unfiltered list
> -----------------------------------------------------------------------
>
> Key: MDEP-501
> URL: https://issues.apache.org/jira/browse/MDEP-501
> Project: Maven Dependency Plugin
> Issue Type: Bug
> Affects Versions: 2.10
> Reporter: Beirtí Ó'Nunáin
> Attachments: build-classpath-preserve-order.patch
>
>
> If you use the build-classpath mojo, you get the dependency list as specified in the pom. However, if you introduce filtering, you end up losing the dependency order. It seems that the org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter declares 'Set' instead of 'SortedSet' and that the org.apache.maven.shared.artifact.filter.collection.AbstractArtifactFeatureFilter returns a HashSet instead of a LinkedHashSet, even though a LinkedHashSet is being passed in.
> The impact of this is that you cannot generate a correctly-ordered classpath when using filters. The fix is very straightforward, simply change the filterIncludes and filterExcludes methods of AbstractArtifactFeatureFilter to use a LinkedHashSet.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)