Java 如何定义EasyRules中只需执行一条规则?
我用它来评估一组escenarios,每一个都会执行不同的逻辑。我想确保在所有注册的规则中,只有一个得到执行,我有以下代码:Java 如何定义EasyRules中只需执行一条规则?,java,rule-engine,easy-rules,Java,Rule Engine,Easy Rules,我用它来评估一组escenarios,每一个都会执行不同的逻辑。我想确保在所有注册的规则中,只有一个得到执行,我有以下代码: public static void main(String[] args) { Facts facts = new Facts(); facts.put("object", "value"); Rules rules = new Rules(); rules.register(new Rule1()); rules.reg
public static void main(String[] args) {
Facts facts = new Facts();
facts.put("object", "value");
Rules rules = new Rules();
rules.register(new Rule1());
rules.register(new Rule2());
rules.register(new Rule3());
RulesEngine rulesEngine=new DefaultRulesEngine();
rulesEngine.fire(rules, facts);
}
在上一个示例中,我希望确保如果规则1得到执行,则规则2和规则3将不会被执行
感谢您的帮助要在匹配发生后停止进一步执行规则,您需要按如下方式配置规则引擎:
RulesEngineParameters parameters = new RulesEngineParameters()
.skipOnFirstAppliedRule(true);
RulesEngine rulesEngine=new DefaultRulesEngine(parameters);
: