You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Kurt Zettel II <kz...@gmail.com> on 2011/11/23 17:58:13 UTC

Building multiple classifiers

Hello Maven Developers,

I have built a plugin that builds projects for the BlackBerry.  It
needs to build for multiple RIM OS versions so I use a classifier such
as my-library-1.0-rim-4.5.0, my-library-1.0-rim-5.0.0 etc.  I am
running into two problems:

1. How can I resolve this classifier recursively?  So if A depends on
B depends on C they can all using classifier rim-4.5.0.  I am using a
property now but that doesn't resolve great and seems to irritate the
release plugin and not resolve correctly from profiles (I have to pass
it in as a command line argument).

2. How can I build these in a single build?  Currently the plugin
builds one platform at a time but I would like to execute Maven for
each platform (which are defined by profiles).  Is there a plugin for
that?  I can hack something together but it seems like Maven would
already have an elegant way to do this.

Thank you,

Kurt

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Building multiple classifiers

Posted by Brett Porter <br...@apache.org>.
On 24/11/2011, at 3:58 AM, Kurt Zettel II wrote:

> Hello Maven Developers,
> 
> I have built a plugin that builds projects for the BlackBerry.  It
> needs to build for multiple RIM OS versions so I use a classifier such
> as my-library-1.0-rim-4.5.0, my-library-1.0-rim-5.0.0 etc.  I am
> running into two problems:
> 
> 1. How can I resolve this classifier recursively?  So if A depends on
> B depends on C they can all using classifier rim-4.5.0.  I am using a
> property now but that doesn't resolve great and seems to irritate the
> release plugin and not resolve correctly from profiles (I have to pass
> it in as a command line argument).

Unfortunately this isn't possible directly right now. You can probably achieve it through putting it into the version instead (but that has other downsides). The intended way is to use consistently named profiles for declaring the dependencies in each project.

> 
> 2. How can I build these in a single build?  Currently the plugin
> builds one platform at a time but I would like to execute Maven for
> each platform (which are defined by profiles).  Is there a plugin for
> that?  I can hack something together but it seems like Maven would
> already have an elegant way to do this.

Maven doesn't have a way to re-execute - but typically a single plugin can be configured to generate several formats in different iterations. It really is up to your plugin. You can attach the new artifacts to the build using the project helper - take a look at the build-helper-maven-plugin attach-artifact goal for an example.

Cheers,
Brett

--
Brett Porter
brett@apache.org
http://brettporter.wordpress.com/
http://au.linkedin.com/in/brettporter





---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org