Please ask at the HK2 project forum.
Marek
On 18 Oct 2013, at 14:22, Markus Döring <m.doering_at_mac.com> wrote:
> Hi,
>
> I am trying to use jersey2 with a library (pegdown/parboiled) that requires ASM4.1 but which clashes with the repackaged version 3.3.1 of ASM that comes with the hk2-locator in jersey-core.
> I've tried excluding the repackaged asm from jersey and use the newer 4.1 instead, but that unsurprisingly does not work.
>
> Any chances to upgrade ASM to a newer version 4 release any time soon?
>
> best,
> Markus
>
>
>
> Here is the error I get when using the newer ASM 4.1:
>
> 2013-10-18 14:20:53.764:WARN:oejuc.AbstractLifeCycle:main: FAILED o.e.j.m.p.JettyWebAppContext_at_41fe1281{/,file:/Users/mdoering/dev/speciesrepublic/src/main/webapp/,STARTING}{file:/Users/mdoering/dev/speciesrepublic/src/main/webapp/}: java.lang.IncompatibleClassChangeError: Implementing class
> java.lang.IncompatibleClassChangeError: Implementing class
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:420)
> at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:382)
> at org.glassfish.jersey.server.ResourceConfig.scanClasses(ResourceConfig.java:872)
> at org.glassfish.jersey.server.ResourceConfig._getClasses(ResourceConfig.java:837)
> at org.glassfish.jersey.server.ResourceConfig.getClasses(ResourceConfig.java:752)
> at org.glassfish.jersey.server.ResourceConfig$WrappingResourceConfig._getClasses(ResourceConfig.java:1101)
> at org.glassfish.jersey.server.ResourceConfig.getClasses(ResourceConfig.java:752)
> at org.glassfish.jersey.server.ResourceConfig$RuntimeConfig.<init>(ResourceConfig.java:1159)
> at org.glassfish.jersey.server.ResourceConfig$RuntimeConfig.<init>(ResourceConfig.java:1132)
> at org.glassfish.jersey.server.ResourceConfig.createRuntimeConfig(ResourceConfig.java:1128)
> at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:282)
>
>
>
> And here is my maven dependency tree without the exclusion:
>
> [INFO] +- org.glassfish.jersey.containers:jersey-container-servlet:jar:2.3.1:compile
> [INFO] | +- org.glassfish.jersey.core:jersey-common:jar:2.3.1:compile
> [INFO] | | +- org.glassfish.hk2:hk2-locator:jar:2.2.0-b14:compile
> [INFO] | | | +- (org.glassfish.hk2.external:javax.inject:jar:2.2.0-b14:compile - omitted for duplicate)
> [INFO] | | | +- org.glassfish.hk2.external:asm-all-repackaged:jar:2.2.0-b14:compile
> [INFO] | | | +- (org.glassfish.hk2:hk2-api:jar:2.2.0-b14:compile - omitted for duplicate)
> [INFO] | | | +- (org.glassfish.hk2:hk2-utils:jar:2.2.0-b14:compile - omitted for duplicate)
> [INFO] | | | \- org.glassfish.hk2.external:cglib:jar:2.2.0-b14:compile
> [INFO] | | \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.1:compile
> ...
> [INFO] +- org.pegdown:pegdown:jar:1.4.1:compile
> [INFO] | \- org.parboiled:parboiled-java:jar:1.1.5:compile
> [INFO] | +- org.parboiled:parboiled-core:jar:1.1.5:compile
> [INFO] | +- (org.ow2.asm:asm:jar:4.1:compile - omitted for duplicate)
> [INFO] | +- org.ow2.asm:asm-tree:jar:4.1:compile
> [INFO] | | \- (org.ow2.asm:asm:jar:4.1:compile - omitted for duplicate)
> [INFO] | +- org.ow2.asm:asm-analysis:jar:4.1:compile
> [INFO] | | \- (org.ow2.asm:asm-tree:jar:4.1:compile - omitted for duplicate)
> [INFO] | \- org.ow2.asm:asm-util:jar:4.1:compile
> [INFO] | \- (org.ow2.asm:asm-tree:jar:4.1:compile - omitted for duplicate)
>
>
>
>
> --
> Markus Döring
> Berlin, Germany
> m.doering_at_mac.com
>
>
>