You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@felix.apache.org by Roy Teeuwen <ro...@teeuwen.be> on 2017/05/09 19:33:46 UTC

Which osgi core dependency to use in maven projects

Hey all,

I was wondering how you can know what version you can use as dependency in your maven project when using felix. For example my current project has as system bundle org.apache.felix.framework version 4.6.1. How can I know then what artifact version I can use for org.osgi.core then?

I see that the following header is provided, does that help me?

Provide-Capability: osgi.ee; osgi.ee="OSGi/Minimum"; version:List="1.0, 1.1, 1.2", osgi.ee; osgi.ee="JavaSE"; version:List="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8"

Thanks!
Roy


Re: Which osgi core dependency to use in maven projects

Posted by Neil Bartlett <nj...@gmail.com>.
Actually M is right, although it is strongly discouraged to use version ranges at build time, so that should just be <version>6.0.0</version>.

This defines OSGi Release 6 which is supported by Felix. Usually you build against a specification (i.e. OSGi core R6) and then pick an implementation that supports it.

Neil


> On 12 May 2017, at 18:09, Roy Teeuwen <ro...@teeuwen.be> wrote:
> 
> Hey Mark,
> 
> But for this to work, you have to know which interfaces Felix supports of OSGi R6, no? Because else why not write everything against the 6.0.0 dependency?
> 
> Greets,
> Roy
>> On 11 May 2017, at 11:39, list+org.apache.felix@io7m.com wrote:
>> 
>> On 2017-05-09T21:33:46 +0200
>> Roy Teeuwen <ro...@teeuwen.be> wrote:
>> 
>>> Hey all,
>>> 
>>> I was wondering how you can know what version you can use as dependency in your maven project when using felix. For example my current project has as system bundle org.apache.felix.framework version 4.6.1. How can I know then what artifact version I can use for org.osgi.core then?
>>> 
>>> I see that the following header is provided, does that help me?
>>> 
>>> Provide-Capability: osgi.ee; osgi.ee="OSGi/Minimum"; version:List="1.0, 1.1, 1.2", osgi.ee; osgi.ee="JavaSE"; version:List="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8"
>> 
>> Hello.
>> 
>> I think you have to think in terms of the version(s) of the OSGi APIs
>> that you need. For example, if you're writing code that depends on the
>> interfaces and semantics provided by OSGi R6, then you'd probably use a
>> dependency like:
>> 
>> <dependency>
>>   <groupId>org.osgi</groupId>
>>   <artifactId>org.osgi.core</artifactId>
>>   <version>[6.0.0, 7.0.0)</version>
>>   <scope>provided</scope>
>> </dependency>
>> 
>> The specification versions going back to 4.0.0 are in Central.
>> 
>> M
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
For additional commands, e-mail: users-help@felix.apache.org


Re: Which osgi core dependency to use in maven projects

Posted by Roy Teeuwen <ro...@teeuwen.be>.
Hey Mark,

But for this to work, you have to know which interfaces Felix supports of OSGi R6, no? Because else why not write everything against the 6.0.0 dependency?

Greets,
Roy
> On 11 May 2017, at 11:39, list+org.apache.felix@io7m.com wrote:
> 
> On 2017-05-09T21:33:46 +0200
> Roy Teeuwen <ro...@teeuwen.be> wrote:
> 
>> Hey all,
>> 
>> I was wondering how you can know what version you can use as dependency in your maven project when using felix. For example my current project has as system bundle org.apache.felix.framework version 4.6.1. How can I know then what artifact version I can use for org.osgi.core then?
>> 
>> I see that the following header is provided, does that help me?
>> 
>> Provide-Capability: osgi.ee; osgi.ee="OSGi/Minimum"; version:List="1.0, 1.1, 1.2", osgi.ee; osgi.ee="JavaSE"; version:List="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8"
> 
> Hello.
> 
> I think you have to think in terms of the version(s) of the OSGi APIs
> that you need. For example, if you're writing code that depends on the
> interfaces and semantics provided by OSGi R6, then you'd probably use a
> dependency like:
> 
>  <dependency>
>    <groupId>org.osgi</groupId>
>    <artifactId>org.osgi.core</artifactId>
>    <version>[6.0.0, 7.0.0)</version>
>    <scope>provided</scope>
>  </dependency>
> 
> The specification versions going back to 4.0.0 are in Central.
> 
> M


Re: Which osgi core dependency to use in maven projects

Posted by li...@io7m.com.
On 2017-05-09T21:33:46 +0200
Roy Teeuwen <ro...@teeuwen.be> wrote:

> Hey all,
> 
> I was wondering how you can know what version you can use as dependency in your maven project when using felix. For example my current project has as system bundle org.apache.felix.framework version 4.6.1. How can I know then what artifact version I can use for org.osgi.core then?
> 
> I see that the following header is provided, does that help me?
> 
> Provide-Capability: osgi.ee; osgi.ee="OSGi/Minimum"; version:List="1.0, 1.1, 1.2", osgi.ee; osgi.ee="JavaSE"; version:List="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8"

Hello.

I think you have to think in terms of the version(s) of the OSGi APIs
that you need. For example, if you're writing code that depends on the
interfaces and semantics provided by OSGi R6, then you'd probably use a
dependency like:

  <dependency>
    <groupId>org.osgi</groupId>
    <artifactId>org.osgi.core</artifactId>
    <version>[6.0.0, 7.0.0)</version>
    <scope>provided</scope>
  </dependency>

The specification versions going back to 4.0.0 are in Central.

M