Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What IDE setup and workflow is used for OSGi development?

Tags:

I made quite a few easy OSGi test projects in Eclipse RCP. My typical workflow would always be:

  • Make 3 different projects: APIproject, Clientproject and Serverproject
  • Edit the MANIFEST.MF of APIproject to export the api package
  • Edit the MANIFEST.MF file of Clientproject and Serverproject to add the required API package
  • Choose "Run as..." > "Plugin Framework"
  • OSGi console starts in eclipse and everything seems to work

I also tried wiring things by using Declarative Services, which worked well like this too.

Now recently I wanted to try out iPOJO. The problem is that I get the feeling that I've been doing my OSGi development the wrong way.
Can it be that I should instead make 1 project en make it work like no OSGi is involved. And then afterwards, just export each package to its own bundle by means of (for instance) the BNDL tool? Should development be done in a normal Eclipse (java, not RCP) or any other java IDE for that matter?

So that's why I have these questions:

  • What IDE setup is normally used to develop OSGi with iPOJO?
  • And what is the normal workflow to be used when developing OSGi projects (maybe with iPOJO)?
like image 790
Falx Avatar asked Mar 16 '10 10:03

Falx


1 Answers

Normally when I develop OSGi bundles (not Eclipse RCP bundles) I use the following tools:

  • Maven 2 as the build system.
  • Apache Felix maven-bundle-plugin to generate MANIFEST.MF automatically.
  • Pax Exam to create integration tests that run inside an OSGi container.
  • Pax Runner to execute my bundles in any OSGi framework (equinox, felix, etc.).
  • IntelliJ (or sometimes Eclipse) as a standard IDE without any OSGi extras.

I have not yet developed any Eclipse RPC bundles, but there's a new tool for Maven 6 Eclipse RPC build integration called Tycho (http://tycho.sonatype.org).

like image 133
Sten Roger Sandvik Avatar answered Oct 11 '22 21:10

Sten Roger Sandvik