首页 > 解决方案 > RuleUnit + Quarkus 示例缺少应该包含 KieServices 和 KieContainer 的 Java 文件 - 如果没有这些项目,它如何工作?

问题描述

我有一个基于外部档案的问题:

https://github.com/kiegroup/kogito-examples/tree/stable/ruleunit-quarkus-example

我读自:

https://docs.drools.org/latest/drools-docs/html_single/#kie-sessions-stateless-con_decision-engine

" 在此示例中,Drools 项目的 ~/resources 文件夹中的示例规则和所有其他文件都是使用以下代码构建的:

创建 KIE 容器

KieServices kieServices = KieServices.Factory.get();
KieContainer kContainer = kieServices.getKieClasspathContainer();

"

但是,对于 的存档ruleunit-quarkus-example,我已经 git 克隆了存档并 grep 搜索了文件:

grep -r "KieServices" ./*
grep -r "KieContainer" ./*

KieServices但是在里面找不到任何文件KieContainer。但ruleunit-quarkus-example执行没有问题。没有KieServicesand它是如何工作的KieContainer?这会创建无状态或有状态会话吗?

标签: javadroolskogito

解决方案


主要问题是您正在尝试 Kogito,但您正在阅读 Drools v7 的文档。

Kogito 基于 Drools,但目前附带一些扩展。RuleUnit API 存在于 v7 中,但它是实验性的;它为 Kogito 进行了大修,并且完全不同。

请参阅 Kogito 文档以了解更多信息 kogito.kie.org/guides

资料来源:我是一名 Kogito 开发人员 :-)


推荐阅读