On 5 janv. 2011, at 20:32, Alex Karasulu wrote:

> 
> 
> On Wed, Jan 5, 2011 at 9:16 PM, Jesse McConnell <jesse.mcconn...@gmail.com> 
> wrote:
> >> Since you have eclipse plugins you ought to
> >> build those with maven + tycho and have a similar and sane versioning
> >> system.
> >>
> >
> > I talked with Pierre about it. As a side point because of the way the build
> > in Studio is setup, we're unable at this point to take advantage of IDE
> > refactoring since dependencies are on bundle jars rather than on projects
> > themselves. Do you know if using Maven + Tycho will help with this specific
> > problem?
> > I'm asking this because it might spare some work for us when we refactor
> > shared which Studio depends on.
> >
> 
> when I am working on the jetty wtp plugin I am able to have all 3
> plugins open and refactor between them, I just let m2eclipse import
> and do the right thing
> 
> the combination of m2eclipse + maven3 + tycho is quite nice
> 
> Ahh cool. PAM, and Seelman is this something you might want to try or leave 
> out for later? I just cringe at the thought of your having to manually update 
> Studio again after we reorg shared.  

Hi Alex, Jesse,

The situation is a little more complicated actually as we have a three level 
story here.

Let me recap the situation...

Some functionalities of Studio plugins require that we use/extend classes of 
some Shared and ApacheDS project modules.

Unfortunately, those Shared and ApacheDS project modules are not OSGI (or 
Eclipse) bundles (yet?).
In order to solve that problem and to be able to use them in our plugins, we 
created a specific Eclipse plugin for each required Shared and ApacheDS 
dependency.
I named such a plugin as a "Library Plugin", opposed to our "Studio Code 
Plugins".

A "Library Plugin" simply embeds the jar file of the corresponding Shared or 
ApacheDS project module and sets a proper MANIFEST.MF file with the correct 
OSGI and Eclipse instructions (Bundle-SymbolicName, Export-Package, 
Require-Bundle, etc.).

In the end, in your Eclipse workspace, you find yourself having two projects 
for a single original module:
- that original module with the source code ('shared-ldap' for example)
- the associated library plugin, based on a constructed (snapshot) jar file of 
that original module ('org.apache.directory.shared.ldap' for example)

Now, when you refactor the source code of the original module, unfortunately, 
the link between that module and the final "Studio Code Plugin" is lost for 
Eclipse, because of the use of the jar file in the associated "Library Plugin" 
between the two.
Then the modifications applied on the original module are not applied to the 
"Studio Code Plugin".

I'm not sure Tycho can help us solve this issue, but it does, I'd be happy to 
update our Studio build to use it...

Thoughts?

Regards,
Pierre-Arnaud

Reply via email to