You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Maarten Billemont (JIRA)" <ji...@codehaus.org> on 2008/10/24 17:06:19 UTC

[jira] Commented: (MEAR-87) Allow exclusion of artifacts when building the ear file.

    [ http://jira.codehaus.org/browse/MEAR-87?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=151830#action_151830 ] 

Maarten Billemont commented on MEAR-87:
---------------------------------------

The current method of excluding dependencies is OK for excluding two or three.

It is UNMANAGABLE for excluding large groups of dependencies.  Moreover, excluding transitive dependencies this way is utterly rediculous, especially when you have lots of them.  You end up with a POM file that repeats x% of all the dependencies in your project, creating massive dublicate code which is hell to maintain.

For example, we want to exclude all non-in-house artifacts from the EAR generated; so that the EAR file we distribute contains only our own artifacts.  The other dependencies, we put in the default/lib directory of our JBoss AS; they do not belong in the EAR file - where they only serve to bloat; especially when we're trying to build or deploy 4 EAR files, each with all of those dependencies in them.

> Allow exclusion of artifacts when building the ear file.
> --------------------------------------------------------
>
>                 Key: MEAR-87
>                 URL: http://jira.codehaus.org/browse/MEAR-87
>             Project: Maven 2.x Ear Plugin
>          Issue Type: New Feature
>    Affects Versions: 2.3.1
>            Reporter: Dieter Houthooft
>            Priority: Minor
>             Fix For: 2.4
>
>         Attachments: maven-ear-plugin-excludes-fixed.patch, maven-ear-plugin-excludes.patch
>
>
> What is included in the .ear file is determined by the module list and the dependency list and its transitive dependencies. We are often confronted with changing demands about what to include in our ear files. It is quite hard to change our dependency management (scopes) every time without side-effects on other distributable artifacts. So I created an exclude configuration option which allows to exclude artifacts from the ear file based on regular expressions (java.util.regex) matching artifactIds and groupIds.
> Use it like this:
> <configuration>
>    <excludes>
>       <exclude>
>          <groupId>be.nondistributable.*</groupId>
>       </exclude>
>    </excludes>
> </configuration>

-- 
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