You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Paul Gier (JIRA)" <ji...@codehaus.org> on 2008/11/11 15:41:13 UTC

[jira] Created: (MNG-3832) Allow wildcards in dependency exclusions

Allow wildcards in dependency exclusions
----------------------------------------

                 Key: MNG-3832
                 URL: http://jira.codehaus.org/browse/MNG-3832
             Project: Maven 2
          Issue Type: New Feature
          Components: Dependencies
            Reporter: Paul Gier


I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.

Exclude all transitive dependencies
{code}
<exclusion>
  <groupId>*</groupId>
</exclusion>
{code}

Exclude transitive dependencies with the groupId "org.company"
{code}
<exclusion>
  <groupId>org.company</groupId>
  <artifactId>*</artifactId>
</exclusion>
{code}


-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "william dutton (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=230801#action_230801 ] 

william dutton commented on MNG-3832:
-------------------------------------

when can this issue be resolved, is there anything i can do to get this moving?

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter updated MNG-3832:
------------------------------

    Fix Version/s: 2.x

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter updated MNG-3832:
------------------------------

    Fix Version/s:     (was: 2.x)
                   3.1

there's a few exclusions issues in the 3.1 bucket we can pull together

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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] Issue Comment Edited: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Alex Alvarez (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=260646#action_260646 ] 

Alex Alvarez edited comment on MNG-3832 at 3/18/11 3:38 AM:
------------------------------------------------------------

I have given up all hope, MNG-2315 which is similar has been lying there since 2006.

If tit helps anyone, the most widespread workaround that I have seen is to import the offending jar to the local maven repository under another name.

      was (Author: alex.alvarez):
    I have given up all hope, MNG-2315 which is similar has been lying there since 2006.
  
> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Tomek Bujok (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tomek Bujok updated MNG-3832:
-----------------------------

    Attachment: MNG-3832-maven-artifact.patch

Patch which solves MNG-3832 issue (also including test case)

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Davor Hrg (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=255565#action_255565 ] 

Davor Hrg commented on MNG-3832:
--------------------------------

too bad this is still not resolved, with 2 years behind, and 38 votes currently ... and on top of it patches are provided

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Feargal Egan (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=174948#action_174948 ] 

Feargal Egan commented on MNG-3832:
-----------------------------------

I agree, this would be extremely helpful.

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Alex Alvarez (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=260646#action_260646 ] 

Alex Alvarez commented on MNG-3832:
-----------------------------------

I have given up all hope, MNG-2315 which is similar has been lying there since 2006.

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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] (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Haakon Nilsen (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=288853#comment-288853 ] 

Haakon Nilsen edited comment on MNG-3832 at 1/20/12 3:22 AM:
-------------------------------------------------------------

Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

    <exclusion>
      <groupId>*</groupId>
      <artifactId>*</artifactId>
    </exclusion>

However, this produces these warnings:

    [WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for my.groupid:my.artifactid:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
    [WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for my.groupid:my.artifactid:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33

So I probably shouldn't be doing it, but it does work.
                
      was (Author: haakon):
    Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

    <exclusion>
      <groupId>*</groupId>
      <artifactId>*</artifactId>
    </exclusion>

However, this produces these warnings:

    [WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
    [WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33

So I probably shouldn't be doing it, but it does work.
                  
> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: https://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Haakon Nilsen (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=288853#comment-288853 ] 

Haakon Nilsen edited comment on MNG-3832 at 1/19/12 9:18 AM:
-------------------------------------------------------------

Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

    <exclusion>
      <groupId>*</groupId>
      <artifactId>*</artifactId>
    </exclusion>

However, this produces these warnings:

    [WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
    [WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33

So I probably shouldn't be doing it, but it does work.
                
      was (Author: haakon):
    Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

{{
<exclusion>
  <groupId>*</groupId>
  <artifactId>*</artifactId>
</exclusion>
}}

However, this produces these warnings:

{{[WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
[WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33}}

So I probably shouldn't be doing it, but it does work.
                  
> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: https://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Vincenzo Vitale (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=171684#action_171684 ] 

Vincenzo Vitale commented on MNG-3832:
--------------------------------------

+1

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Tomek Bujok (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=182334#action_182334 ] 

Tomek Bujok commented on MNG-3832:
----------------------------------

I have been using and popularizing Maven since many yeras. This week I am on some kind vacations so I decided to spend a day coding and contribute a little bit. I wanted to implement a "wildcard dependency exclusions feature" (MNG-3832). I have never browsed the Maven source code before, but after getting acquinted with the project structure, running and debugging it from eclipse I found the potential class to change. It was ExcludesArtifactFilter in the maven-artifact project. 
The fix version of the feature was 2.x -> so I have checked out the code from the newest 2.2.x branch, since the trunk folder contains 3.x version.

I wanted the modification to be self-contained thus I have only changed the ExcludesArtifactFilter class. I have also created a test case (ExcludesArtifactFilterTest) encompassing 21 unit tests which proves the correctnes of the implemented approach.

I have extended the requested functionality a little bit. Right now, filter constructs literal java regular expression for every pattern which is contained by the list passed to the filter constructor. Include method matches given artifact against all patterns. Since it is an exlcusion filter - if artifact is matched at least once it will not be included. Filter defines "\*" (star) as a wild-card character - a character that may be substituted for any other character(s). It is implemented in such a way, that every occurrence of a "\*" (star) in the exclusion pattern is replaced with the ".*" expression during the construction of the literal java regex. Exclusion pattern can contain wild-card character zero or more times in any place in the groupId or artifactId;

Patch file is included as an external file to this issue.

Examples:

{code:xml} 
DEFINITION:
<exclusion>
  <groupId>*</groupId>
</exclusion>
SEMANTICS: All artifacts are excluded.
LITERAL_JAVA_REGEX: .*:.* (optimized by excludeAll flag)

DEFINITION:
<exclusion>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: All artifacts are excluded.
LITERAL_JAVA_REGEX: .*:.* (optimized by excludeAll flag)

DEFINITION:
<exclusion>
  <groupId>*</groupId>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: All artifacts are excluded.
LITERAL_JAVA_REGEX: .*:.* (optimized by excludeAll flag)

DEFINITION:
<exclusion>
  <groupId>*</groupId>
  <artifactId>commons-lang</artifactId>
</exclusion>
SEMANTICS: Artifacts with any groupId and with the artifactId equal to "commons-lang" will be excluded.
LITERAL_JAVA_REGEX: .*:commons-lang

DEFINITION:
<exclusion>
  <groupId>org.springframework</groupId>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: Artifacts with groupId "org.springframework" will be excluded.
LITERAL_JAVA_REGEX: org\.springframework:.*
MATCHING_ARTIFACT_EXAMPLES: org.springframework:spring-ws
NOT_MATCHING_ARTIFACT_EXAMPLES: org.springframework.snapshot:spring-ws

DEFINITION:
<exclusion>
  <groupId>org.springframework.*</groupId>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: Artifacts with groupId beginning with "org.springframework." will be excluded.
LITERAL_JAVA_REGEX: org\.springframework\..*:.*
MATCHING_ARTIFACT_EXAMPLES: org.springframework.snapshot:spring-ws
NOT_MATCHING_ARTIFACT_EXAMPLES: org.springframeworksnapshot:spring-ws

DEFINITION:
<exclusion>
  <groupId>org.springframework*</groupId>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: Artifacts with groupId beginning with "org.springframework" will be excluded.
LITERAL_JAVA_REGEX: org\.springframework.*:.*
MATCHING_ARTIFACT_EXAMPLES: org.springframework.snapshot:spring-ws, org.springframeworksnapshot:spring-ws
NOT_MATCHING_ARTIFACT_EXAMPLES: org.spring.snapshot:spring-ws

DEFINITION:
<exclusion>
  <groupId>org.*.test</groupId>
  <artifactId>*</artifactId>
</exclusion>
SEMANTICS: Artifacts with groupId beginning with "org." and ending with ".test" will be excluded.
LITERAL_JAVA_REGEX: org\..*\.test*:.*
MATCHING_ARTIFACT_EXAMPLES: org.apache.test:test-library, org.apache.snapshot.test:test-library
NOT_MATCHING_ARTIFACT_EXAMPLES: orgapachetest:test-library
{code} 

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Tomek Bujok (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=197020#action_197020 ] 

Tomek Bujok commented on MNG-3832:
----------------------------------

Was this patch helpful to you? Or maybe you are not interested in such contribution? I was delighted to implement this feature and right now I am little bit dissapointed that there is no activity in this subject. 

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Tomek Bujok (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=198237#action_198237 ] 

Tomek Bujok commented on MNG-3832:
----------------------------------

The solution I have implemented could be easily included to 2.2.2 version. Many people urgently require this feature (There are 16 votes here and 74 in MNG-2315)  Is the approach that I implemented inline with the Maven2 architecture? I can implement it once more or correct the patch in order to have this ticket resolved in 2.2.2 version. 

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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] (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Haakon Nilsen (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=288853#comment-288853 ] 

Haakon Nilsen commented on MNG-3832:
------------------------------------

Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

{{
<exclusion>
  <groupId>*</groupId>
  <artifactId>*</artifactId>
</exclusion>
}}

However, this produces these warnings:

{{
[WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
[WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33
}}

So I probably shouldn't be doing it, but it does work.
                
> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: https://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Kyle Lebel (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=163978#action_163978 ] 

Kyle Lebel commented on MNG-3832:
---------------------------------

I would like to see this as well, any news on this topic?  

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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: (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Wendy Smoak (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=198239#action_198239 ] 

Wendy Smoak commented on MNG-3832:
----------------------------------

I think you'll get more attention if you post to the dev list and describe what you've done.  JIRA produces a LOT of mail and many people filter it out.  This is an issue with quite a few votes and watchers, so hopefully you'll catch the interest of a committer who can help.  

> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: http://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 2.x
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

-- 
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] (MNG-3832) Allow wildcards in dependency exclusions

Posted by "Haakon Nilsen (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MNG-3832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=288853#comment-288853 ] 

Haakon Nilsen edited comment on MNG-3832 at 1/19/12 9:16 AM:
-------------------------------------------------------------

Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

{{
<exclusion>
  <groupId>*</groupId>
  <artifactId>*</artifactId>
</exclusion>
}}

However, this produces these warnings:

{{[WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
[WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33}}

So I probably shouldn't be doing it, but it does work.
                
      was (Author: haakon):
    Not sure what's going on, but this seems to work in Maven 3.0.3, using this:

{{
<exclusion>
  <groupId>*</groupId>
  <artifactId>*</artifactId>
</exclusion>
}}

However, this produces these warnings:

{{
[WARNING] 'dependencies.dependency.exclusions.exclusion.groupId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 31, column 30
[WARNING] 'dependencies.dependency.exclusions.exclusion.artifactId' for no.nkf:kredws-ejb:ejb-client with value '*' does not match a valid id pattern. @ line 32, column 33
}}

So I probably shouldn't be doing it, but it does work.
                  
> Allow wildcards in dependency exclusions
> ----------------------------------------
>
>                 Key: MNG-3832
>                 URL: https://jira.codehaus.org/browse/MNG-3832
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Dependencies
>            Reporter: Paul Gier
>             Fix For: 3.1
>
>         Attachments: MNG-3832-maven-artifact.patch
>
>
> I would like to be able to exclude all transitive dependencies from a certain dependencies.  This is especially useful when depending on an artifact with a classifier that may not have the same dependencies as the main artifact.  Currently the only way to do this is by excluding each dependency individually which requires significant effort and is prone to becoming out of date.  The following syntax is one possibility.
> Exclude all transitive dependencies
> {code}
> <exclusion>
>   <groupId>*</groupId>
> </exclusion>
> {code}
> Exclude transitive dependencies with the groupId "org.company"
> {code}
> <exclusion>
>   <groupId>org.company</groupId>
>   <artifactId>*</artifactId>
> </exclusion>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira