The syntax only allows for double quotes. The reason double quotes are
necessary for the version range value is because they escape the contained
comma which typically separates clauses. The implementation thinks that
com.google.gwt.thirdparty.guava;version='[16.0.1 is the first clause and
16.0.2)' the second. The path (i.e. everything before the parameters) of a
Subsystem-Content clause must follow the symbolic name syntax, which
16.0.2)' does not.

On Fri, Oct 2, 2015 at 1:29 AM, Paul F Fraser <[email protected]> wrote:

> Hi,
>
> Using this esa file
>
> Subsystem-SymbolicName: vaadin.feature
> Subsystem-Version: 1.0.0
> Subsystem-Type: osgi.subsystem.feature
> Subsystem-Content:
> com.google.gwt.thirdparty.guava;version='[16.0.1,16.0.2)',
>  com.google.gwt.thirdparty.streamhtmlparser;version='[0.0.10,0.0.11)',
>  com.vaadin.client-compiled;version='[7.5.5,7.5.6)',
>  com.vaadin.external.atmosphere.runtime;version='[2.2.7,2.2.8)',
>  com.vaadin.external.org.slf4j;version='[1.6.1,1.6.2)',
>  com.vaadin.push;version='[7.5.5,7.5.6)',
>  com.vaadin.server;version='[7.5.5,7.5.6)',
>  com.vaadin.shared;version='[7.5.5,7.5.6)',
>  com.vaadin.themes;version='[7.5.5,7.5.6)'
>
> Seems to be a problem with parsing the version, I get this error :
>
> org.osgi.service.subsystem.SubsystemException:
> java.lang.IllegalArgumentException: Missing symbolic name path: 16.0.2)'
>     at
> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:92)
>     at
> org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:30)
>     at java.security.AccessController.doPrivileged(Native Method)
>     etc......
>
> Do I have the esa contents formatted correctly, or is there some other
> problem?
>
> Also, how are version qualifiers handled, does the system ignore them?
>
> Regards
>
> Paul Fraser
>

Reply via email to