Table of Contents

What can we do to make Fedora more OSGi-friendly (ideally, without building in any runtime dependencies on OSGi)?

  • For jars that are intended to be usable by other projects, build them with the maven-bundle-plugin so they include OSGi metadata.
  • Put APIs and implementation details in different packages.  Two common conventions in the OSGi world are to use an ".internal" or ".impl" suffix on packages that contain implementation details. If you use the maven-bundle-plugin, such named packages will not be exported by default.
  • If possible, avoid using libraries that are known to be problematic in OSGi environments, or require third-party repackaging in order to work in OSGi environments.  Well-known examples include:
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels