Drools - 能否在运行时定义规则?

20

是否可以完全在运行时动态定义规则?并且在运行时更改规则集。

例如,

at time = t_1 the ruleset is { R1, R2, R3 } 
at time = t_2 the ruleset is { R1, R3, R4 } 
..... 

R1和R2是在运行时定义的规则。

谢谢。

3个回答

22

2
Drools 7+(我正在使用7.27.0.Final)是否有相应的替代品?您指向的代码使用了内部类/方法(KnowledgeBaseKnowledgeSession),而KieBase类没有addPackage方法。 - bfrguci
有人有能力恢复那个丢失的文件DynamicRulesTest.java吗? - Liam Bohl
您回答中的所有链接目前均已失效。 - DiegoAlfonso

1

阅读有关“知识代理”(KnowledeAgent)的文档并查看测试,了解您可以做什么以及如何做到这一点。


0
在Drools 5中,您只需要更改KnowledgeBase,它将隐式地使KnowledgeSession保持最新状态。这就是集成测试告诉您的。实际上,您不需要KAgent来完成这个任务。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接