Java Drools 运行时错误

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/18839448/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-12 11:33:08  来源:igfitidea点击:

Drools runtime error

javaeclipsedrools

提问by newbie

I'm trying to run Droolssample ( the HelloWorld sample when creating a new Drools project ), I didn't change anything in the project but I'm getting an error.

我正在尝试运行Drools示例(创建新 Drools 项目时的 HelloWorld 示例),我没有更改项目中的任何内容,但出现错误。

Here's the stacktrace:

这是堆栈跟踪:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
org.drools.RuntimeDroolsException: Unable to load dialect 'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java:org.drools.rule.builder.dialect.java.JavaDialectConfiguration'
    at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:321)
    at org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurationMap(PackageBuilderConfiguration.java:307)
    at org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConfiguration.java:192)
    at org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderConfiguration.java:170)
    at org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:300)
    at org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:228)
    at org.drools.builder.impl.KnowledgeBuilderFactoryServiceImpl.newKnowledgeBuilder(KnowledgeBuilderFactoryServiceImpl.java:34)
    at org.drools.builder.KnowledgeBuilderFactory.newKnowledgeBuilder(KnowledgeBuilderFactory.java:46)
    at com.sample.DroolsTest.readKnowledgeBase(DroolsTest.java:39)
    at com.sample.DroolsTest.main(DroolsTest.java:23)
Caused by: java.lang.RuntimeException: The Eclipse JDT Core jar is not in the classpath
    at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.setCompiler(JavaDialectConfiguration.java:100)
    at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.init(JavaDialectConfiguration.java:61)
    at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:317)
    ... 9 more

I'm running the project in eclipse IDE

我在 Eclipse IDE 中运行该项目

采纳答案by Furrald

Like Sid said, the jar is in your eclipse plugin directory. For my windows box, this is C:\Program Files\eclipse\plugins\org.eclipse.jdt.core_3.8.2.v20120814-155456.jar

就像 Sid 所说的,jar 位于您的 eclipse 插件目录中。对于我的 Windows 框,这是 C:\Program Files\eclipse\plugins\org.eclipse.jdt.core_3.8.2.v20120814-155456.jar

回答by Sid

You may need to add the library org.eclipse.core.jdt-version that is on your
eclipse plugins folder to your classpath.

您可能需要将
eclipse plugins 文件夹中的库 org.eclipse.core.jdt-version 添加到类路径中。

回答by Rupesh

Adding onto what Sid and Furrald already mentioned. Stating just an obvious, but if someone is wondering where they can find the jar for JBoss Dev Studio on a Linux: I have it at

添加到 Sid 和 Furrald 已经提到的内容。说明一个显而易见的,但如果有人想知道他们在哪里可以找到 Linux 上 JBoss Dev Studio 的 jar:我有它

<path-to-devStudio>/devstudio/studio/plugins/<name-and-version-of-jdt-core>.jar