如何在不使用 kie-server 容器的情况下使用 java 应用程序在本地执行 drools kjar?

How to execute drools kjar locally using java application and without using kie-server containers?

我需要从 drools 规则项目创建 kjar 并将其作为依赖项用于另一个 java 应用程序。如何在不使用任何 kie 服务器的情况下以嵌入式模式在 java 应用程序中执行 kjar?

您只需将适当的 kie 库包含到您的应用程序中,然后在适当的地方调用它即可。设置它的代码可能如下所示:

KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();
KieSession kSession = kContainer.newKieSession("ksession2");
kSession.setGlobal("out", out);

kSession.insert(new Message("Dave", "Hello, HAL. Do you read me, HAL?"));
kSession.fireAllRules();

kSession.insert(new Message("Dave", "Open the pod bay doors, HAL."));
kSession.fireAllRules();

您真的应该仔细阅读文档。你应该看看这整个事情,但文档中的示例解决了你正在尝试做的事情:Drools Documentation