什么Drools JARS需要在服务器的WEB-INF \ lib中用于jBPM?

时间:2013-09-20 20:44:36

标签: servlets jboss drools jbpm

我已经移植了一个Tomcat servlet来运行JBoss 7.1,现在我正在尝试添加jBPM支持。我运行了jbpm-5.4.0.Final-installer-full.zip以使用Kepler安装JBoss / jBPM(我必须修补安装程序以安装Kepler)。然后,我从安装程序的“评估”示例中复制了一行代码,并将其放在我的servlet中。那行代码是:

KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();

添加必要的导入后,我得到了一个干净的构建。我想我可以在安装程序的。\ runtime \ lib中找到Drools运行时文件,并将它们放在我的servlet的。\ WEB-INF \ lib中。但是,当我尝试执行KnowledgeBuilder代码行时,这样做会导致我得到“Class not found”异常。事实证明,如果我在安装程序的。\ runtime \ lib中用JARS替换我的。\ WEB-INF \ lib中的drools-distribution-5.5.0.Final.zip(来自http://www.jboss.org/drools/downloads)我的JAR能够执行KnowledgeBuilder代码行。

我的问题是: 1)为什么安装程序的。\ runtime \ lib中的JAR不能在上面工作? 2)我在哪里可以找到所有这些Drools JAR所做的以及需要哪些文档的文档?

谢谢。 人

1 个答案:

答案 0 :(得分:0)

如果我在这里列出特定的Jars,答案只适用于特定版本的Drools。获得正确JAR的最佳方法是使用Maven构建项目。这将自动导入所需的所有JAR。

您通常需要dr​​ools-core和drools-compiler的依赖项。那些有自己的传递依赖。

            <dependency>
                    <groupId>org.drools</groupId>
                    <artifactId>drools-core</artifactId>
                    <version>${drools.version}</version>
            </dependency>
            <dependency>
                    <groupId>org.drools</groupId>
                    <artifactId>drools-compiler</artifactId>
                    <version>${drools.version}</version>
            </dependency>

如果您使用Eclipse,那么您可以创建一个包含这些依赖项的pom.xml。在Maven pom编辑器中打开它,“Effective POM”选项卡将显示所有必需的依赖项。