Drools简单介绍

drools入门

简单的规则文件

  1.  
    rule "name"
        attributes
        when
            LHS
        then
            RHS
    end
    
     
  2. 关键字:

drools 文档说明了两种关键字  "hard keywords" 和 "soft keywords"

一下是 hard keywords -就是不能用的 identifiers 当你在写规则文件时:

如果想用 可以使用 `` 符号将关键字包裹进去.

    2.注释 

       类似传统语言 单行 用 # 或 // ,多行用 /* */

 

3.错误查看,任何语言都有错误提示 ,以下是drl的错误提示

101: No viable alternative

 

例子

1: rule one
2:   when
3:     exists Foo()
4:     exits Bar()
5:   then
6: end

  

 错误提示:

[ERR 101] Line 4:4 no viable alternative at input 'exits' in rule one ,

 

提示: exists 是drools 的rule ,之后将会讲到.

 

 

 

 [ERR 101] Line 3:2 no viable alternative at input 'WHEN' 

1: package org.drools;
2: rule
3:   when
4:     Object()
5:   then
6:     System.out.println("A RHS");
7: end

  

 

 

 由于rule 的name 没有指定 ,所以产生以上错误,程序将 when 当成了 rule 的name 所以产生 '没有有效的可选的 when';

 

以下错误代码比较易懂:

[ERR 102] Line 0:-1 mismatched input '<eof>' expecting ')' in rule simple_rule in pattern Bar

 

[ERR 101] Line 0:-1 no viable alternative at input '<eof>' in rule simple_rule in pattern Student

 

都是由于括号或是引号不匹配造成的 .

 

错误代码 Trailing semi-colon not allowed   

eval(abc();)

不容许在eval中以";"  结束.

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(drools)