[Subsystem] why I received a "Composite subsystem using version range for content" error for version=0.1.1.20170423004731?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[Subsystem] why I received a "Composite subsystem using version range for content" error for version=0.1.1.20170423004731?

Cristiano Gavião
Hello all,

I know that the subsystem specs says that we should not use version
range for composite subsystem's contents.

But I was not able to understand the reason I got the error below:

> Error installing 'com.c8tech.hawkeyes.esa'
> org.osgi.service.subsystem.SubsystemException: Composite subsystem
> using version range for content:
> com.c8tech.hawkeyes.lib;type=osgi.bundle;version=0.1.1.20170423004731;resolution:=mandatory
>     at
> org.apache.aries.subsystem.core.internal.SubsystemManifestValidator.validate(SubsystemManifestValidator.java:31)
>     at
> org.apache.aries.subsystem.core.internal.BasicSubsystem.<init>(BasicSubsystem.java:107)
>     at
> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:75)
>     at
> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:30)
>     at java.security.AccessController.doPrivileged(Native Method)

I have resolved the qualifier before have generated the esa, as its
showed in the error, the version is 0.1.1.20170423004731.

what am I missing here ?

best regards and thanks,

Cristiano



Reply | Threaded
Open this post in threaded view
|

Re: [Subsystem] why I received a "Composite subsystem using version range for content" error for version=0.1.1.20170423004731?

Cristiano Gavião
Ok, answering myself after remember on how OSGi treats a range version,
reading section 3.2.6 of the OSGi Core Specification...

> If a version range is specified as a single version, it must be
> interpreted as the range [version,∞).

So, in order to have a fixed version I MUST set the header this way:

> com.c8tech.hawkeyes.lib;type=osgi.bundle;version="[0.1.1.20170424014114,0.1.1.20170424014114]";resolution:=mandatory

best,

Cristiano


On 22/04/2017 22:48, Cristiano Gavião wrote:

> Hello all,
>
> I know that the subsystem specs says that we should not use version
> range for composite subsystem's contents.
>
> But I was not able to understand the reason I got the error below:
>
>> Error installing 'com.c8tech.hawkeyes.esa'
>> org.osgi.service.subsystem.SubsystemException: Composite subsystem
>> using version range for content:
>> com.c8tech.hawkeyes.lib;type=osgi.bundle;version=0.1.1.20170423004731;resolution:=mandatory
>>     at
>> org.apache.aries.subsystem.core.internal.SubsystemManifestValidator.validate(SubsystemManifestValidator.java:31)
>>     at
>> org.apache.aries.subsystem.core.internal.BasicSubsystem.<init>(BasicSubsystem.java:107)
>>     at
>> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:75)
>>     at
>> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:30)
>>     at java.security.AccessController.doPrivileged(Native Method)
>
> I have resolved the qualifier before have generated the esa, as its
> showed in the error, the version is 0.1.1.20170423004731.
>
> what am I missing here ?
>
> best regards and thanks,
>
> Cristiano
>
>
>