My 2 cents as a non developer for felix or karaf 

I have made the switch for my core packages to the bnd-maven-plugin and
like that I can copy things between my bnd.bnd file and my bndrun file
that I use for testing in eclipse. I am looking forward to when they get
launcher and test support for maven into the builds. Niel discusses the
benifits of the plugin more here
http://njbartlett.name/2015/03/27/announcing-bnd-maven-plugin.html [1] 

That being said though I do use the embed features of the Maven bundle
plugin for several things. 

        * Making outside bundles OSGI compatible like combining the rxJava
library with the rxReactiveStreams library which share the rx package.
It is very easy to embed them as source and then just expose the
packages I need.
        * I use it for embededding the old .72 version of kafka and still
having the newer version of the libs as well.

I am using incremental builds with takari's lifecycle though which
requires a specific packaging but that still works with the
maven-bundle-plugin as seen here
https://github.com/takari/io.takari.incrementalbuild/blob/master/incrementalbuild-workspace/pom.xml#L29


I agree that it is very early as most of the required bnd/maven features
are in the snapshots only and are very beta but I think the work they
are doing over there is very promising and would love to see bnd files
for a lot of the karaf stuff. I think it would help me greatly in my
understanding to see what people are doing that work a lot more with
osgi then I do but have a similar build environment. 

David Daniel 

On 2015-11-09 13:58, Christian Schneider wrote: 

> Thanks for the clarifications.
> 
> I personally like the external bnd.bnd files. They are more concise than xml 
> configs.
> You should maybe write a blog entry about the annotations and also the parent 
> configs. I liked the way you generically set up the exports based on the 
> version annotations but forgot how to do it exactly.
> 
> I am not sure about embed dependency. Personally I normally do not use it but 
> it is used in quite some places. So it would be important to check what these 
> people try to achieve with the embed and if the same can be done without.
> It would be a shame to have to mix both maven plugins in bigger projects.
> 
> Christian
> 
> Am 09.11.2015 um 18:36 schrieb Neil Bartlett (Paremus):
> 
>> Just addressing a couple of points made on this list. Yes, we support only 
>> instructions in the separate bnd.bnd file (currently). However with 
>> judicious use of Java annotations, we find that you very rarely need bnd 
>> instructions at all! However I don't agree that this is the "biggest 
>> difference" between bnd-maven-plugin and maven-bundle-plugin... The biggest 
>> differences are: (a) no special packaging type, and (b) no magic/implicit 
>> exports. The licence of bnd-maven-plugin is Apache. However since 
>> bnd-maven-plugin is part of the bnd project, it is released at the same time 
>> as any enhancements made to bnd. This helps people who want to use the very 
>> latest bnd features. @Benson: There are no plans to implement 
>> Embed-Dependency, and I would oppose any move to do so since I think it's 
>> such a terrible idea. Regards, Neil
 

Links:
------
[1] http://njbartlett.name/2015/03/27/announcing-bnd-maven-plugin.html

Reply via email to