[jboss-jira] [JBoss JIRA] (DROOLS-632) java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult.getProblems

Roman Stumm (JIRA) issues at jboss.org
Tue Oct 28 11:42:37 EDT 2014


    [ https://issues.jboss.org/browse/DROOLS-632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015591#comment-13015591 ] 

Roman Stumm commented on DROOLS-632:
------------------------------------

We had the same problem after upgrading from jetty 9.1.0.v20131115 to jetty 9.2.3.v20140905.
The reason is that the jetty WebAppClassLoader hides classes (e.g. the eclipse compiler and all classes in package "org.eclipse.jdt."). This can be changed, see org.eclipse.jetty.webapp.WebAppContext.getDefaultServerClasses() and setServerClasses().

see https://bugs.eclipse.org/bugs/show_bug.cgi?id=414885

> java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult.getProblems
> --------------------------------------------------------------------------------------------
>
>                 Key: DROOLS-632
>                 URL: https://issues.jboss.org/browse/DROOLS-632
>             Project: Drools
>          Issue Type: Bug
>    Affects Versions: 6.1.0.Final
>         Environment: hadoop,console,mapreduce
>            Reporter: Yongbo Wu
>            Assignee: Mario Fusco
>            Priority: Trivial
>              Labels: hadoop,CompilationResult,NoSuchMethosError
>
> I create a Drools Project(with some example code) and it run well in eclipse.
> then I package it and run in console, alongwith all jars needed.
> Here comes the error:
> java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult
> .getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;
>         at org.drools.compiler.commons.jci.compilers.EclipseJavaCompiler$3.accep
> tResult(EclipseJavaCompiler.java:379)
>         at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)
>         at org.drools.compiler.commons.jci.compilers.EclipseJavaCompiler.compile
> (EclipseJavaCompiler.java:409)
>         at org.drools.compiler.commons.jci.compilers.AbstractJavaCompiler.compil
> e(AbstractJavaCompiler.java:49)
>         at org.drools.compiler.rule.builder.dialect.java.JavaDialect.compileAll(
> JavaDialect.java:409)
>         at org.drools.compiler.compiler.DialectCompiletimeRegistry.compileAll(Di
> alectCompiletimeRegistry.java:46)
>         at org.drools.compiler.compiler.PackageRegistry.compileAll(PackageRegist
> ry.java:109)
>         at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileAll(Know
> ledgeBuilderImpl.java:1202)
>         at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileAllRules
> (KnowledgeBuilderImpl.java:846)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildR
> ules(CompositeKnowledgeBuilderImpl.java:279)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildP
> ackages(CompositeKnowledgeBuilderImpl.java:103)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(
> CompositeKnowledgeBuilderImpl.java:91)
>         at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledge
> Packages(AbstractKieModule.java:220)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.createKieBase(K
> ieContainerImpl.java:386)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieC
> ontainerImpl.java:346)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.newKieSession(K
> ieContainerImpl.java:498)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.newKieSession(K
> ieContainerImpl.java:469)
>         at com.sohu.adrd.QLabel.DroolsTest.main(DroolsTest.java:21)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.hadoop.util.RunJar.main(RunJar.java:186)
> java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult
> .getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;
>         at org.drools.compiler.commons.jci.compilers.EclipseJavaCompiler$3.accep
> tResult(EclipseJavaCompiler.java:379)
>         at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)
>         at org.drools.compiler.commons.jci.compilers.EclipseJavaCompiler.compile
> (EclipseJavaCompiler.java:409)
>         at org.drools.compiler.commons.jci.compilers.AbstractJavaCompiler.compil
> e(AbstractJavaCompiler.java:49)
>         at org.drools.compiler.rule.builder.dialect.java.JavaDialect.compileAll(
> JavaDialect.java:409)
>         at org.drools.compiler.compiler.DialectCompiletimeRegistry.compileAll(Di
> alectCompiletimeRegistry.java:46)
>         at org.drools.compiler.compiler.PackageRegistry.compileAll(PackageRegist
> ry.java:109)
>         at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileAll(Know
> ledgeBuilderImpl.java:1202)
>         at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileAllRules
> (KnowledgeBuilderImpl.java:846)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildR
> ules(CompositeKnowledgeBuilderImpl.java:279)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildP
> ackages(CompositeKnowledgeBuilderImpl.java:103)
>         at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(
> CompositeKnowledgeBuilderImpl.java:91)
>         at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledge
> Packages(AbstractKieModule.java:220)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.createKieBase(K
> ieContainerImpl.java:386)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieC
> ontainerImpl.java:346)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.newKieSession(K
> ieContainerImpl.java:498)
>         at org.drools.compiler.kie.builder.impl.KieContainerImpl.newKieSession(K
> ieContainerImpl.java:469)
>         at com.sohu.adrd.QLabel.DroolsTest.main(DroolsTest.java:21)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.hadoop.util.RunJar.main(RunJar.java:186)
> How could I get rid of this? Any suggestion is weclome!
> Thanks.



--
This message was sent by Atlassian JIRA
(v6.3.1#6329)


More information about the jboss-jira mailing list