引起:java.lang.NoSuchFieldError:ruleMemo

时间:2013-05-20 15:42:55

标签: java antlr drools

我得到了这个例外 - 遗憾的是,我正在尝试使用常春藤而不是蚂蚁来增强项目,而通常我会做一个

的过程

“添加新库文件”

“运行程序”

“检查崩溃时声称需要的库文件”

这次程序崩溃了

Caused by: java.lang.NoSuchFieldError: ruleMemo

这当然不是很有用,我也不知道在哪里看。打开stacktrace项目不会产生一个ruleMemo成员的气味......有没有人见过这个,并且知道什么类正在调用/使用它?

使用哪个lib文件也很有用,但不如该类有用!

哎呀 - 让我把一个堆栈跟踪放进去,所以有人不仅仅使用ruleMemo作为成员来编写自己的类,并告诉我需要它!

Caused by: java.lang.NoSuchFieldError: ruleMemo
at org.drools.lang.DRLLexer.<init>(DRLLexer.java:96)
at org.drools.compiler.DrlParser.getParser(DrlParser.java:207)
at org.drools.compiler.DrlParser.parse(DrlParser.java:60)
at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:165)
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:276)
at org.springframework.beans.factory.config.MethodInvokingFactoryBean.doInvoke(MethodInvokingFactoryBean.java:160)
at org.springframework.beans.factory.config.MethodInvokingFactoryBean.afterPropertiesSet(MethodInvokingFactoryBean.java:150)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 70 more

1 个答案:

答案 0 :(得分:1)

根本原因分析

我怀疑你使用的是drools编译器jar的4.0.1版本?

该jar只与antlr-runtime jar的3.0.1版兼容:

建议

我推荐两件事:

将ivy与Maven存储库管理器相结合将确保检索到正确的相互依赖性。