Drools 6.1.0.Final Runtime jar

时间:2014-11-14 04:16:40

标签: dependencies drools jbpm

我正在使用Drools 6.1.0.Final文档来设置我的Eclipse环境。 我指的是这个文件:

http://docs.jboss.org/drools/release/6.1.0.Final/drools-docs/html_single/

中的

Section "1.3.1.4.4. Drools Runtimes"

我的drools安装中的许多二进制文件(解压缩“drools-distribution-6.1.0.Final.zip”)

D:\Drools-6.1.0.Final\binaries

哪些jar构成Drools运行时jar文件?

我可以将我的eclipse指向drools binaries文件夹,但我想了解Eclipse所需的最小运行时jar文件集。

Section Section "1.3.1.1. Dependencies and JARs"确实讨论了依赖jar,例如:

knowledge-api.jar
knowledge-internal-api.jar
drools-core.jar
drools-compiler.jar
drools-jsr94.jar
drools-decisiontables.jar

我能够找到这4个:

drools-core.jar
drools-compiler.jar
drools-jsr94.jar
drools-decisiontables.jar

然而这些2:

knowledge-api.jar
knowledge-internal-api.jar

这种替换在Drools 6.1.0.Final release

中是否正确
knowledge-api.jar --> kie-api-6.1.0.Final.jar
knowledge-internal-api.jar --> kie-internal-6.1.0.Final.jar

我需要从Drools发行版的二进制文件夹中创建一个完整的Drools运行时的其他罐子吗?

2 个答案:

答案 0 :(得分:1)

您的问题没有简单的答案,因为它取决于您的应用程序实际使用的Drools功能。如果它使用模板,您将需要drools-templates- .jar。如果加载预编译的知识库,则可能不需要drools-compiler - .jar和antlr jar。

除非你使用这个弱(但通用)API,否则你不应该需要drools-jsr94.jar。

它也随Drools版本而变化。 6已经重命名了一些,并且在某些5.x版本中发生了一些重新排序(我认为)。

我所做的是运行我的Java应用程序,使用shell脚本从命令行启动它,我在其中定义类路径,例如: (请注意,这是截断的 - 它是一行中的单个字符串):

export CLASSPATH=".:$root/drools-core-${tag}.jar:$root/kie-api-${tag}.jar:...
    :$root/kie-internal-${tag}.jar."

现在如果Java编译器找不到类,我会在jar中搜索它,并添加它。笨拙?也许

答案 1 :(得分:0)

如果您正在考虑使用Maven。将此添加到您的pom.xml中,它可以管理您的依赖性。

pom.xml

 <dependency>
        <groupId>org.kie</groupId>
        <artifactId>kie-ci</artifactId>
        <version>7.15.0.Final</version>
</dependency>