In maven use:
<dependency>
<groupId>com.mycompany.native</groupId>
<artifactId>libname</artifactId>
<version>x.y</version>
</dependency>
In maven bundle plugin then you may use:
<Embed-Dependency>*;artifactId=libname;inline=true</Embed-Dependency>
The libname.jar deployed to your maven repository must contain dll/so files.
Or
<dependency>
<groupId>com.mycompany.native</groupId>
<artifactId>libname</artifactId>
<version>x.y</version>
<type>dll</type>
</dependency>
<Embed-Dependency>*;type=dll|so</Embed-Dependency>
However from maven point of view packaging should be used instead of type.
In embed dependency you may use different filters - groupId, artifactId or even
scope, so depends on the number of dependencies you may choose what's works for
you.
Kind regards,
Łukasz Dywicki
--
[email protected]
Twitter: ldywicki
Blog: http://dywicki.pl
Code-House - http://code-house.org
Wiadomość napisana przez CLEMENT Jean-Philippe
<[email protected]> w dniu 14 lis 2013, o godz. 09:36:
> Right ;)
>
> Well, the plugin assembled the bundle without issue *but* with native
> libraries stored in the resource directory. I would like the native libraries
> to be taken from the maven repository instead.
>
> I didn’t find a simple way to do so. The bundle plugin has two issues. First
> all dependencies are added to the classpath no matter the dependency type (it
> adds .so and .dll as well!). Second the embedded file name keeps the maven
> format. Unfortunately the native file name is also its identifier so it must
> be changed. Note that using the Embed-StripVersion option fails as it also
> strips the classifier part (so two resources which only differs with the
> classifier attribute overloads each other).
>
> Any idea?
>
> JP
>
> [@@ THALES GROUP INTERNAL @@]
>
> De : Łukasz Dywicki [mailto:[email protected]]
> Envoyé : mercredi 13 novembre 2013 23:35
> À : [email protected]
> Objet : Re: Maven bundle plugin with native libraries as resources
>
> For native dependencies you need also Bundle-NativeCode manifest entry. Check
> OSGi Core specification for detailed description as well.
>
> Cheers,
> Łukasz Dywicki
> --
> [email protected]
> Twitter: ldywicki
> Blog: http://dywicki.pl
> Code-House - http://code-house.org
>
> Wiadomość napisana przez CLEMENT Jean-Philippe
> <[email protected]> w dniu 12 lis 2013, o godz. 13:27:
>
>
> Dear Karaf exeperts,
>
> I would like the maven bundle plugin to use native libraries stored in the
> repository. I tried Embed-Dependency with native libraries (.so & .dll). It
> succeeds but the Bundle-ClassPath is generated with them.
>
> Is there a way to remove non-jar dependencies from the Bundle-ClassPath entry?
>
> JP