@sarod I created a PR (#38) for this, and pasted the generated manifest file in the PR comment. Could you please check if it looks OK to you?
Given my ignorance of OSGI, my concerns are
should I add those OSGI attributes in the manifest of the sources and javadoc jar as well? I currently don't do it, but I have no idea of the implications.
the gradle OSGI plugin generates a ;uses:=<list of used packages>" for each export package. I guess that's not a problem, except maybe that javax.annotation is always listed, although it's not actually needed at runtime: the annotations are used by FindBugs, at build time. What do you think?
the gradle OSGI plugin generates Import-Package: javax.annotation,javax.sql, although javax.sql is part of the JDK. What's the use of that? Should I care?
OSGI attributes are used for OSGI runtime so I don't think there is a need to add them to the source or javadoc jars.
the uses:= information are optional and painful to maintain manually. Howver since gradle OSGI/BND generates them for free you can keep them.
Regarding javax.sql it's optional to list the "javax.*" packages that are present in the jre however it's considered a best practice.
The javax.annotation is maybe more problematic. Some annotations (like Nullable) are defined with runtime retention that is why BND lists them. This should work because there is already a javax.annotation package in the jre that contains some annotation. However it's probably cleaner to exclude the annotation because you know they are not used at runtime. This should be doable using the bnd Import-Package instruction (http://www.aqute.biz/Bnd/Format#import-package).