Looking for a good dev environment for OSGi bundle

2020-02-17 10:49发布

问题:


Want to improve this question? Update the question so it's on-topic for Stack Overflow.

Closed 5 years ago.

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)

回答1:

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:

  • BND and Bundlor
  • pax and pax-construct
  • Sigil