Is there manifest first http://wiki.osgi.org/wiki/Tooling_Approaches gradle plugin for OSGi? Or how to do it with gradle?
There's big old project for OSGi container with many project having complicated relation declared in MANIFEST.MF. The build is long. Now we want to simplify things and adopt Gradle. But first without breaking things and keeping ant and gradle builds in parallel for some time. However what I see is gradle suggesting define MANIFEST inside build.gradle
. https://docs.gradle.org/current/userguide/osgi_plugin.html
That would make a lot of copy work.
UPDATE There are close to 100 modules with a lot of dependencies information between modules and for nested jar. On average MANIFEST.MF length is about 50 lines (varies from 20 to 300 lines). How to bundle nested jar's is other question. This question is about using existing MANIFEST.MF files. All plugins I saw use bnd
that is exactly contrary to manifest first approach.
As of April 2016 there's no Manifest-first approach in Maven or Gradle build tools for OSGi.
While for Eclipse plugins (that are also valid OSGi bundles) there is maven/tycho build, that is standard within Eclipse Foundation, it is not really of help for general OSGi projects.
Oposite to Manifest-first is Manifest generation, and there is only one tool bnd
, that initially was for manifest creation, then grew into full bundle jar builder and now has BndTools Eclipse integration, looking similar to Maven/Gradle integration managing dependencies.
I would recommend to keep bnd
instructions in external standard bnd.bnd
file and not to put it inside build script. *.bnd
files are similar to usual Java .properties
files, so in Eclipse IDE right-click, Open with -> Other ... select Properties File Editor
check "Use this editor for.." and check "Use this editor for all '*.nbd' files"
Include-Resource
not working" is open issue since 2010osgi-run
"Osgi-Run - A Gradle plugin to make the development of modular applications using OSGi completely painless"maven-bundle-plugin
aka Apache Felix Maven Bundle Plugin (BND) is “Maven first” approachbnd-maven-plugin
announce and 2 plugins comparisonAll bnd-based tools are now collected on http://bnd.bndtools.org/chapters/700-tools.html
There are some examples in https://github.com/paulvi/OSGiBuildExamples
Note: link http://wiki.osgi.org/wiki/Tooling_Approaches has been in "The OSGi Community Wiki was unfortunately hacked and is currently unavailable. " status for more than a week, while this question was opened.
Sadly @Richard gave up too early to receive some thanks as well (for mentioning maven)
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments