You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@karaf.apache.org by to...@quarendon.net on 2019/03/25 12:54:05 UTC

Karaf 4.2.3 uses glassfish jaxb 2.3.2 which is java 9, is this a problem?

We've tried to upgrade to karaf 4.2.3/4 and have hit a problem.

I don't believe we explicitly use org.glassfish.jaxb ourselves, but karaf has a dependency on it. Karaf 4.2.3 updated this dependency to 2.3.2, and that's a java 9 module.

So with a fresh karaf 4.2.4, if you do:
  bundle:install -s 'wrap:mvn:org.glassfish.jaxb/txw2/2.3.2'  
you get:
  java.lang.ArrayIndexOutOfBoundsException: 19
	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:576)
	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:494)
	at aQute.bnd.osgi.Clazz.parseClassFileWithCollector(Clazz.java:483)
	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:473)
	at aQute.bnd.osgi.Analyzer.analyzeJar(Analyzer.java:2177)
	at aQute.bnd.osgi.Analyzer.analyzeBundleClasspath(Analyzer.java:2083)
	at aQute.bnd.osgi.Analyzer.analyze(Analyzer.java:138)
	at aQute.bnd.osgi.Analyzer.calcManifest(Analyzer.java:616)
	at org.ops4j.pax.swissbox.bnd.BndUtils.createBundle(BndUtils.java:161)
	at org.ops4j.pax.url.wrap.internal.Connection.getInputStream(Connection.java:83)

This seems to be the symptom of "incorrect class version".

We run on java 8 at the moment, but karaf is intended to support java 8 as far as I understand it.

So is this an issue with karaf, or is there a dependency we need to update? 
Thanks.

Re: Karaf 4.2.3 uses glassfish jaxb 2.3.2 which is java 9, is this a problem?

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi Tom,

it should not have an impact with Java 8.

We did this update to "align" JAXB version between Karaf and other
projects (like Camel and CXF).

Maybe the issue is in txw2 ?

Let me check.

Regards
JB

On 25/03/2019 13:54, tom@quarendon.net wrote:
> We've tried to upgrade to karaf 4.2.3/4 and have hit a problem.
> 
> I don't believe we explicitly use org.glassfish.jaxb ourselves, but karaf has a dependency on it. Karaf 4.2.3 updated this dependency to 2.3.2, and that's a java 9 module.
> 
> So with a fresh karaf 4.2.4, if you do:
>   bundle:install -s 'wrap:mvn:org.glassfish.jaxb/txw2/2.3.2'  
> you get:
>   java.lang.ArrayIndexOutOfBoundsException: 19
> 	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:576)
> 	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:494)
> 	at aQute.bnd.osgi.Clazz.parseClassFileWithCollector(Clazz.java:483)
> 	at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:473)
> 	at aQute.bnd.osgi.Analyzer.analyzeJar(Analyzer.java:2177)
> 	at aQute.bnd.osgi.Analyzer.analyzeBundleClasspath(Analyzer.java:2083)
> 	at aQute.bnd.osgi.Analyzer.analyze(Analyzer.java:138)
> 	at aQute.bnd.osgi.Analyzer.calcManifest(Analyzer.java:616)
> 	at org.ops4j.pax.swissbox.bnd.BndUtils.createBundle(BndUtils.java:161)
> 	at org.ops4j.pax.url.wrap.internal.Connection.getInputStream(Connection.java:83)
> 
> This seems to be the symptom of "incorrect class version".
> 
> We run on java 8 at the moment, but karaf is intended to support java 8 as far as I understand it.
> 
> So is this an issue with karaf, or is there a dependency we need to update? 
> Thanks.
> 

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com