Drools-规则编译错误名称无法解析为变量语法错误,插入“;”完成声明
问题描述:
我试图建立在KIE工作台/ Drools的一个简单的规则在新的DRL文件,我不断收到关于构建以下错误&部署Drools-规则编译错误名称无法解析为变量语法错误,插入“;”完成声明
规则编译错误名称不能被解析为变量语法错误,插入“;”完成声明
下面的代码:
package demo.people.peopleproject
import demo.people.peopleproject.Person
rule "is18rule"
when
Person(age>=18)
then
System.out.println(name + "is 18 or over")
end
我是新来的Drools,TIA您的帮助:)
编辑:我应该补充说,简单地添加一个;真的在这里没有任何帮助,所以,是的,我试过
答
我找到了答案 - 如果将来对任何人都有帮助,这里是最终为我工作的代码。需要分号和稍微不同的语法。
package demo.people.peopleproject
import demo.people.peopleproject.Person;
rule 'is18rule'
when
p: Person(age >= 18)
then
System.out.println(p.getName() + "is 18 or over.");
end
该规则的RHS是Java所以你需要;完成报表。 – tarilabs
关于与匹配Person的“name”字段相关的内容,您可以按照您自己的回答进行操作,或者在LHS中将变量绑定为“Person($ name:name,...)”,然后在RHS中引用为'$ name'。 – tarilabs
是的,谢谢! – tls11