Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[tycho-user] Maven and PDE/Eclipse RCP/OSGi interoperability

Hi all

I'm new to the whole Eclipse RCP environment, and have a fundamental
lack of understanding of how to integrate existing projects (Maven
based) into that runtime environment.

My situation: I have existing projects which are managed with Maven, a
few dozens of them, which have finely tuned Maven dependencies on a
wealth of 3rd party and internal libraries. These projects ultimately
provide a number of - let's call them "Service Locators". Factory
classes which allow clients a multitude of services via various network
protocols in a uniform manner. And Maven delivers us all the complex
dependencies.

So far so good, these service locators have been successfully used with
various web technologies, whose projects have also been managed with
classical maven POMs. Now, a new project wants to use the service
locators in a Eclipse RCP application.

And now I'm a bit lost on how to proceed to bring these locators with
all their dependencies into a RCP universe. We will need both a
comfortable integration into the Eclipse PDE, as well as a fully
automated, headless build (must be Maven based, don't have any options
on that). And of course, I would really like to manage the dependencies
of the service locators only in one place.

I read up on the options and so far I think I have understood (and
played around with) the following:
- Tycho Maven Plugins provide an easy way to automated "native RCP
builds", where dependency management started from and is done in PDE
- the Maven Eclipse Plugin allows me to transform POM dependencies into
a PDE .classpath and .project configuration
- within PDE, I can perfectly manage the dependencies among Eclipse
plugins, but not so easily to other libaries (I can, but it is tedious)

So I have problems getting a feeling of what would be the best way to
solve my problem? Is this a very wierd and exotic problem? Or did I
overlook the obvious solution on how to do this? I'd rather not consider
things like converting our whole Maven repo to an OSGi repo, move to
full OSGi dependency management, etc.etc.

-- 
CU, Joe



Back to the top