> To:
tycho-user@xxxxxxxxxxx
> From:
davidmichaelkarr@xxxxxxxxx
> Date: Fri, 22 Apr 2016 10:49:31 -0700
> Subject: Re: [tycho-user] Help debug classloader
conflict loading plugin in standalone instance (not in
launch config instance)?
>
> On 04/20/2016 12:12 PM, David M. Karr wrote:
> > I'm working on an eclipse plugin codebase that
uses Tycho to build
> > itself. The application requires several artifacts
that aren't
> > available in a p2 repo. To resolve this, I created
one plugin project
> > whose only purpose is to use the
"copy-dependencies" goal from the
> > "maven-dependency-plugin" to specify the artifacts
that are needed and
> > make them available in the "Bundle-ClassPath"
property of the same
> > plugin. I then set other plugins that require
these libraries to
> > depend on this plugin.
> >
> > This had been working fine, although there was one
point where I saw
> > the following error after installing the plugin
from a local update
> > site constructed from the build:
> >
> > java.lang.LinkageError:
org/antlr/v4/runtime/TokenStream
> >
> > After some fiddling, this went away, although I
wasn't certain exactly
> > what I did to make it go away.
> >
> > I'm aware of the fact that this indicates a
conflict with loading a
> > class from multiple classloaders.
> >
> > Today, this error came back.
> >
> > Curiously, if I instead test this with an "Eclipse
Application" run
> > configuration, loading all plugins in the
workspace, I don't see the
> > error.
> >
> > I changed the command line of the Eclipse instance
(not the one from
> > the launch configuration) to add "-verbose:class"
to see where this is
> > loaded from. I extracted the following relevant
lines from the output:
> > ----------------------
> > [Loaded org.antlr.v4.runtime.TokenStream from
> >
file:/home/opnfv/frameworks/eclipse-neon/java-mars/eclipse/../../../../.p2/pool/plugins/net.sf.eclipsecs.checkstyle_6.16.0.201603042321/checkstyle-6.16.1-all.jar]
> > [Loaded org.antlr.v4.runtime.TokenStream from
> >
file:/home/opnfv/frameworks/eclipse-neon/java-mars/eclipse/configuration/org.eclipse.osgi/605/0/.cp/libs/antlr4-runtime-4.5.1.jar]
> > java.lang.LinkageError: loader constraint
violation: loader (instance
> > of
org/eclipse/osgi/internal/loader/EquinoxClassLoader)
previously
> > initiated loading for a different type with name
> > "org/antlr/v4/runtime/TokenStream"
> > at java.lang.ClassLoader.defineClass1(Native
Method)
> > at
java.lang.ClassLoader.defineClass(ClassLoader.java:760)
> > at
> >
org.eclipse.osgi.internal.loader.ModuleClassLoader.defineClass(ModuleClassLoader.java:272)[Loaded
> >
com.google.common.collect.Collections2$FilteredCollection
from
> >
file:/home/opnfv/frameworks/eclipse-neon/java-mars/eclipse/../../../../.p2/pool/plugins/com.google.guava_15.0.0.v201403281430.jar]
> >
> > at
> >
org.eclipse.osgi.internal.loader.classpath.ClasspathManager.defineClass(ClasspathManager.java:632)
> > at
> >
org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:588)
> > at
> >
org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:540)
> > at
> >
org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:527)
> > at
> >
org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:324)
> > at
> >
org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:327)
> > at
> >
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:402)
> > at
> >
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352)
> > at
> >
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344)
> > at
> >
org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
> > at
java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> > at
org.antlr.v4.runtime.Parser.setInputStream(Parser.java:530)
> > -----------------
> >
> > I could use some ideas or suggestions for
troubleshooting and fixing
> > this.
> If it matters, I'm adding more details in a SO posting,
at
>
http://stackoverflow.com/questions/36798891/loader-constraint-violation-loading-antlr-jar-in-eclipse-plugin-built-with-tycho
> .
> _______________________________________________
> tycho-user mailing list
>
tycho-user@xxxxxxxxxxx
> To change your delivery options, retrieve your
password, or unsubscribe from this list, visit
>
https://dev.eclipse.org/mailman/listinfo/tycho-user