In HSEARCH-3151 I went the easy way, and chose to just pass an option to the JVM so that the (deprecated) javax.xml.bind module is made available in the classpath. But starting with JDK11 we won't be able to do that anymore, so we need to find a better solution...
I tried to take some inspiration from there: https://github.com/apache/karaf/blob/b15ce91ec241a2347996ef6dde5937589e9d4555/assemblies/features/framework/src/main/feature/feature.xml#L40 but it didn't work very well...
I tried several bundles, without success:
{code} <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.2/2.9.0</bundle> <bundle start-level="20">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-impl/2.2.11_1</bundle> <bundle dependency="true" start-level="30">mvn:com.sun.xml.bind:jaxb-osgi/<pick a version from Maven Central></bundle>
<bundle start-level="20">mvn:com.sun.xml.bind/jaxb-core/${version.org.glassfish.jaxb}</bundle> <bundle start-level="20">mvn:com.sun.xml.bind/jaxb-impl/${version.org.glassfish.jaxb}</bundle> <bundle start-level="20">mvn:org.glassfish.jaxb/jaxb-runtime/${version.org.glassfish.jaxb}</bundle>> <bundle start-level="20">mvn:com.sun.xml.bind/jaxb-osgi/${version.org.glassfish.jaxb}</bundle> {code}
Even if we don't add anything, the API module is apparently there... So I suspect Karaf is doing some black magic. |
|