I'm currently investigating in the field of dev environment for OSGi bundles.
My goal is to find a way to develop, test and debug with ease the bundles I'll be coding. Besides, I have some "cultural" requirements.
- I want to be able to use java continuous integration servers (typically, Hudson)
- As a consequence of that first requirement, I want to have a repeatable, one-click build process. My typical tool for that is maven.
- And finally, being long-term Eclipse user, and having the m2eclipse at hand to merge my eclipse env with my maven one, I obviously want to be able to test and debug with that IDE.
So far, here are the infos I know
- I can use (and have already tested) maven-bundle-plugin, maven-ipojo-plugin which both offer clean packaging facilities
- I have tested maven pax (and eclipse pax) and am not really satisfied with both : maven pax generates a very heavy project, where adding dependencies is very error-prone (the maven pax:import-bundle command line, with all its arguments, is a hell per se)
- I have taken a look at Karaf, which seems to have some nice direct maven provisionning, but I don't know how to integrate it with my Eclipse, besides using the traditionnal JPDA bridge. However, it seems to be more production-oriented than dev-oriented, and as such may require heavy configuration to fit my need (although the reading of its user manual doesn't revedal that).
Have you got any ideas ? Some maven/eclipse plugins ?
EDIT : my goal is not to provide eclipse plugins or features, it is in fact to create independant application, that may be ultimately packaged as webapp (in a similar fashion to, as an example, sling). Is Tycho able to do that ? It doesn't seems so, as its packaging types page only lists eclipse specific packages types (but I may be wrong)
I have not tested it, but when it comes to maven/eclipse plugin managing OSGi bundles, Tycho seems to be the official project.
See Create a new OSGi bundle in Eclipse
Of course, Tycho is part of the Maven development stack:
Other options are mentioned in the blog entry Me, OSGi and Maven" mentioned by the OP Riduidel in the comments: