java - Drools 将另一个项目的规则添加到 kmodule 中?
问题描述
因此,文档声明您可以通过编程方式加载 kie 模块
KieServices ks = KieServices.Factory.get();
KieContainer kieContainer = newKieContainer(ks.newReleaseId("my.org","my.artifact.id","version"));
KieSession kieSession = kieContainer.newKieSession("ktest");
有没有办法通过maven
和做到这一点kmodule.xml
?我的用例是使用我在这个项目中编写的规则,在另一个项目中添加它们。也许我在 7.7 文档中错过了它,如果是这样,请链接,我会与我的眼科医生预约。
附录:我想kmodule.xml
看起来类似于这样:
<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule">
<configuration>
</configuration>
<!-- Shared Knowledgebase -->
<kbase name="am" packages="my.package.name, rules">
<ksession name="default" type="stateful" default="true"/>
</kbase>
但是,这似乎没有看到包
谢谢
解决方案
所以我确实想通了。我认为这package
与kmodule.xml
. 但实际上它只是简单地添加了incluldes = "package.name"
它,它自己解决了所有问题。
但是,我也推荐@Prog_G 答案,虽然这不是我想要的,但我相信它会帮助其他人解决同样的问题。
最后结果:
<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule">
<configuration>
</configuration>
<kbase name="am" packages="rules" includes = "my.package.name">
<ksession name="default" type="stateful" default="true"/>
</kbase>
推荐阅读
- cordova - 为什么会出现错误:82:变量名无效。必须以字母开头,但是是:'proguard
- json - 有没有办法从 gradle 依赖项中提取项目 URL 和最新可用版本?
- python - 异步和线程
- sql - OracleOperator 中的 CREATE 和 DROP 命令失败
- android - 在 onBindViewHolder 中调用 RecyclerView
- java - 如何编写切面以迎合不同的对象和方法参数
- jquery - Onsen UI - 带有保存工具栏、标签栏和预加载 ajax 文本的 changePage
- java - Java 8中如何使用多维数组根据数组组合原理执行一段代码。例如:男性,周五或女性,周五
- javascript - 如何修复“数字”类型的参数不可分配给“字符串”类型的参数 | 正则表达式''
- python - 使用正则表达式在 CSV 字符串中填充空格