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 >
