maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Fox (JIRA)" <>
Subject [jira] Updated: (MNG-2649) Allow support for property list based artifact qualifying (enhanced classifiers)
Date Thu, 06 Mar 2008 03:02:28 GMT


Brian Fox updated MNG-2649:

    Fix Version/s:     (was: Reviewed Pending Version Assignment)

> Allow support for property list based artifact qualifying (enhanced classifiers)
> --------------------------------------------------------------------------------
>                 Key: MNG-2649
>                 URL:
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Artifacts and Repositories
>    Affects Versions: 2.0.4
>         Environment: Maven 2
>            Reporter: Cédric Vidal
>             Fix For: 2.1
> It should be possible to qualify different flavors of an artifact with a list of properties
instead of just a single classifier.
> The qualified artifacts could be named:
> {noformat}
> myproj-1.0-env=prod-distributed=true.ear
> myproj-1.0-env=dev-distributed=true.ear
> myproj-1.0-env=prod-distributed=false.ear
> myproj-1.0-env=dev-distributed=false.ear
> {noformat}
> They would be referenced that way:
> {code:xml}
> <dependency>
>   <groupId></groupId>
>   <artifactId>myproj</artifactId>
>   <version>1.0</version>
>   <qualifiers>
>     <qualifier><name>env</name><value>prod</value></qualifier>
>     <qualifier><name>distributed</name><value>true</value></qualifier>
>   </qualifiers>
> </dependency>
> {code}
> And the order of the classifiers should not be important. The previous should resolve
> {noformat}
> myproj-1.0-env=prod-distributed=true.ear
> myproj-1.0-distributed=true-env=prod.ear
> {noformat}
> Qualifiers could also be transitive. A typical use case is EARs (or any other types of
artifacts which when packaged embed other artifacts) . If you want to build the distributed
production version of an EAR, then you certainly want to include in that EAR the distributed
production versions of its WAR dependencies.
> To avoid clash in naming with current classifiers, maybe this functionality could be
named qualifiers. Finally, semantically speaking, the difference between classifiers and "qualifiers"
could be that the "qualifiers" could be used for mutually exclusive artifacts whereas classified
versions of a given artifact can be used either together or not.
> To illustrate my point, regarding qualifiers, there is no sens in depending on both prod
and dev versions of a WAR or depending on both the distributed and non distributed versions
of a same EAR, whereas regarding classifiers, in code generation scenarios, daos and entities
are generated by a single project and attached as seperate jars, they are a whole but it's
up to you to depend only on entities or on both entities and DAOs. For a more detailed explanation
of that code generation use case, please see the discussion with Stephane Nicoll in MEAR-44.
> Regards,
> Cédric Vidal

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message