geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sachin Patel <sppat...@gmail.com>
Subject Re: [mevenide-dev] Help building eclipse plugins
Date Sun, 28 Aug 2005 12:38:31 GMT
Thanks for everyones input.  So it seems theres a number of paths we can 
go down, and never have Mavenized anything before, this makes things 
even more confusing for me :) as theres no one clear path I can model 
this after.  So here a my requirements as I would appreciate someone's 
help getting me going on this.

Currently there are 4 plugins (3 of which are defined as eclipe OSGI 
bundles and will be packaged as a .jar), the other a regular plugin.  
The final folder org.apache.geronimo.feature defines the feature.

(1) Be able to define dependencies on external eclipse plugins as well 
as dependencies between each of the geronimo plugins themselves
(2) Compile and create the OSGI bundle .jar
(3) Package in that jar, only whats specified in the build.properties 
file of the given plugin, as some resources don't need to be in the binary.
(4) Build the feature plugin which contains no source.
(5) Finally package each of the plugins and feature into a .zip file for 
distribution.

More advance requirements including creating updating the site.xml and 
distributable jars for the update site.

So some of my confusion lays with the current directory structure.  I 
know for each of the plugins I need to define a project.xml that defines 
each of the dependencies for it.  But what puts all these togather? Do I 
need a single project.xml at the root level above all the plugins that 
handles each of the build steps? Or do I need some sort of master 
project for this where all the output will go into? (Kinda like the 
geronimo assembly module?)  How is project build order handled?

Thanks.

Brett Porter wrote:
> This might seem a little crazy, but perhaps both :) The project.xml (+
> properties) and pom.xml files hopefully should not be too different
> and can sit side by side. As long as those differences are within
> reason this is probably a realistic choice - but it depends on what
> you are able/want to work with.
>
> The Maven2 OSGi plugin is being developed at Apache Felix by Tim
> Bennett. I'm sure he'd love some feedback.
>
> There is a Maven1 plugin at http://mavenosgiplugin.berlios.de/
>
> Hopefully that's all the information you need to go one way or the
> other. Please let me know if I can be of any help.
>
> Cheers,
> Brett
>
> On 8/28/05, Matt Hogstrom <matt@hogstrom.org> wrote:
>   
>> I agree with Jeff that one Maven would be better.  When we do the move
>> to M2 I don't think an additional poject will make that much difference
>> but having to Mavens would a bit frustrating.
>>
>> - Matt
>>
>> Jeff Genender wrote:
>>
>>     
>>> Sachin,
>>>
>>> maven 1 can use a lot of your ant stuff too (just looks a bit wierd).
>>> You don't always have to rely on the plugin - for example the maven
>>> xdoclet plugins are too restrictive.  Its easy to just do a taskdef
>>> and throw in your ant tasks.
>>>
>>> If I had my druthers, I would stick with M1 so it will build with
>>> everything.  Although there is a plan to move to M2, those target
>>> dates are unknown.  It would be nice to have the plugin build under
>>> M1, with the rest of G.  I think it would be a bit much to have the
>>> end user have to download m1 and m2 to build all of G.
>>>
>>> Jeff
>>>
>>> Sachin Patel wrote:
>>>
>>>       
>>>> So, Gilles doesn't recommend modeling the build for the geronimo
>>>> eclipse plugins after the Mevenide plugin, as he thinks its grown way
>>>> too complex, plus it doesn't support OSGI bundles.  The geronimo
>>>> server adapter are already defined as OSGI bundles anyways so this is
>>>> problem as I wouldn't to revert away from OSGI as this would force me
>>>> to use deprecated Eclipse APIs.
>>>>
>>>> He mentions trying to use the maven-osgi-plugin, but the M2 version
>>>> of it, which of course Geronimo hasn't moved to M2 yet.  Will the
>>>> move to M2 be a post 1.0 item?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> Subject:
>>>> Re: [mevenide-dev] Help building eclipse plugins
>>>> From:
>>>> Gilles Dodinet <rhill2@free.fr>
>>>> Date:
>>>> Sat, 27 Aug 2005 16:19:21 +0200
>>>> To:
>>>> dev@mevenide.codehaus.org
>>>>
>>>> To:
>>>> dev@mevenide.codehaus.org
>>>>
>>>> X-Account-Key:
>>>> account3
>>>> X-Gmail-Received:
>>>> 6f5b36182ff4c4ed96e5a06c71c259bdee55bbd1
>>>> Delivered-To:
>>>> sppatel2@gmail.com
>>>> Received:
>>>> by 10.36.121.19 with SMTP id t19cs9894nzc; Sat, 27 Aug 2005 07:15:40
>>>> -0700 (PDT)
>>>> Received:
>>>> by 10.54.63.12 with SMTP id l12mr4524333wra; Sat, 27 Aug 2005
>>>> 07:15:40 -0700 (PDT)
>>>> Return-Path:
>>>> <dev-return-2283-sppatel2=gmail.com@mevenide.codehaus.org>
>>>> Received:
>>>> from codehaus.org (beaver.codehaus.org [64.7.141.17]) by mx.gmail.com
>>>> with SMTP id 14si2776555wrl.2005.08.27.07.15.39; Sat, 27 Aug 2005
>>>> 07:15:40 -0700 (PDT)
>>>> Received-SPF:
>>>> pass (gmail.com: domain of
>>>> dev-return-2283-sppatel2=gmail.com@mevenide.codehaus.org designates
>>>> 64.7.141.17 as permitted sender)
>>>> Received:
>>>> (qmail 6124 invoked by uid 7924); 27 Aug 2005 14:21:21 -0000
>>>> Mailing-List:
>>>> contact dev-help@mevenide.codehaus.org; run by ezmlm
>>>> Precedence:
>>>> bulk
>>>> List-Post:
>>>> <mailto:dev@mevenide.codehaus.org>
>>>> List-Help:
>>>> <mailto:dev-help@mevenide.codehaus.org>
>>>> List-Unsubscribe:
>>>> <mailto:dev-unsubscribe@mevenide.codehaus.org>
>>>> List-Subscribe:
>>>> <mailto:dev-subscribe@mevenide.codehaus.org>
>>>> Reply-To:
>>>> dev@mevenide.codehaus.org
>>>> Delivered-To:
>>>> mailing list dev@mevenide.codehaus.org
>>>> Received:
>>>> (qmail 5606 invoked from network); 27 Aug 2005 14:21:06 -0000
>>>> Message-ID:
>>>> <43107669.3040402@free.fr>
>>>> User-Agent:
>>>> Mozilla Thunderbird 1.0 (Windows/20041206)
>>>> X-Accept-Language:
>>>> en-us, en
>>>> MIME-Version:
>>>> 1.0
>>>> References:
>>>> <430F8BC1.8070703@gmail.com>
>>>> In-Reply-To:
>>>> <430F8BC1.8070703@gmail.com>
>>>> Content-Type:
>>>> text/plain; charset=ISO-8859-1; format=flowed
>>>> Content-Transfer-Encoding:
>>>> 7bit
>>>>
>>>>
>>>> sachin,
>>>>
>>>> right now maven-eclipse-eclipse-plugin is used in conjunction with
>>>> m1. however this plugin has grown big and now exposes too many
>>>> configuration properties and thus is now way too complex. besides
>>>> that it doesn't support osgi bundle packaged plugins so it may
>>>> probably not fit your needs. months ago i had started to reimplement
>>>> it targetting m2 but had no time to finish the task. luckily enough
>>>> matthew pryor has started too to write a m2 plugin to build eclipse
>>>> plugins (search maven-dev list for "help with custom lifecyle"
>>>> thread). i don't know the exact status of this plugin though.
>>>>
>>>> another alternative could be to use maven-osgi-plugin - haven't tried
>>>> m1 version, m2 version' howto can be found here :
>>>> http://tinyurl.com/8cjkv (in particular it needs a modified
>>>> maven-archiver-plugin version) ; just to let you know: i'm
>>>> experimenting a little issue with inherited artifacts : if projectA
>>>> inherits from projectB and projectB declares dependency D with a
>>>> scope of either compile or runtime, D artifact will be bundled in
>>>> projectA's osgi bundle even it redeclares D with a scope of provided.
>>>> i've played with it only recently so i'm not sure yet how to fix it.
>>>> in any case i'll fill a issue against felix jira if i can't solve it.
>>>>
>>>> also if you're hesitating i'd recommend you to start with m2. last,
>>>> as you'd probably know eclipse forces you to use a flat layout - m2
>>>> supports this very well when defining module as  <module>
>>>> ../child-project-folder</module>
>>>>
>>>> hope this helps-
>>>>
>>>> -- gd
>>>>
>>>>
>>>> Sachin Patel wrote:
>>>>
>>>>         
>>>>> Hi all,
>>>>>
>>>>> I'm wanting to build and package a set of plugins and its feature
>>>>> using Maven.  I see that you all have done this successfully with
>>>>> Mavenide.  I'm experienced in Eclipse but a newbie to Maven, so
>>>>> would someone mind helping me get started with this?  I've pulled
>>>>> down the source and I'm looking at the following directory structure
>>>>>
>>>>> goals-grabber
>>>>> maven-eclipse-plugin-plugin
>>>>> mevenide-config
>>>>> mevenide-core
>>>>> mevenide-eclipse-help
>>>>> mevenide-feature
>>>>> mevenide-grammer
>>>>> mevenide-master
>>>>> ... ... ...
>>>>>
>>>>> I want to essentially use your infrastructure as a model.... Where
>>>>> should I start, what should I be looking at?
>>>>>
>>>>> Thanks in advance
>>>>>
>>>>> Sachin.
>>>>>
>>>>>
>>>>>
>>>>>           
>>>>
>>>>         
>>>
>>>       
>>
>>
>>     
>
>   

Mime
View raw message