[
https://issues.jboss.org/browse/DROOLS-632?page=com.atlassian.jira.plugin...
]
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)