08 Drools Workbench 构建规则并发布Maven仓

02 Drools Workbench 构建规则并发布Maven仓

1:登录之后,选择design

2:新建一个项目 Add Project ,输入名字和描述,例子:AgeHandler

08 Drools Workbench 构建规则并发布Maven仓

3:进入项目,构建规则

08 Drools Workbench 构建规则并发布Maven仓

4:点击“Add Asset”

08 Drools Workbench 构建规则并发布Maven仓

填写数据对象名称(就是java类的名字),软件包我一般选择com.myteam

08 Drools Workbench 构建规则并发布Maven仓

5:添加Student属性名和属性类型

08 Drools Workbench 构建规则并发布Maven仓

08 Drools Workbench 构建规则并发布Maven仓

点击右上角的保存;

回退到ageHandler,已经创建了Student对象

08 Drools Workbench 构建规则并发布Maven仓

6:创建DSL文件,点击“Add Asset”,选择“DRL文件”

08 Drools Workbench 构建规则并发布Maven仓

编写规则如下:

08 Drools Workbench 构建规则并发布Maven仓

 

 

package com.myteam;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import com.myteam.Student;

rule "AgeHandlerRule"

 salience 100

 lock-on-active true

 when

 $queryParama : Student(age >=18)

 then

 final Logger LOGGER = LoggerFactory.getLogger("Infer Adult 规则引擎") ;

 LOGGER.info("成年人");

 delete($queryParama);

end

点击保存,规则新建完成;

7:修改Drools Workbench的Maven仓地址

08 Drools Workbench 构建规则并发布Maven仓

根据自己的Maven地址,配置环境变量新建 M2_HOME ,E:\apache-maven-3.6.1 

08 Drools Workbench 构建规则并发布Maven仓

一开始我的没有生效,重启电脑,才生效的;启动之后,在项目中Setting确认一下;

注意-Maven的settings.xml中,添加了 <localRepository> E:\respository</localRepository>

08 Drools Workbench 构建规则并发布Maven仓

8:构建并发布 Build Deploy

08 Drools Workbench 构建规则并发布Maven仓

查看Drools Workbench的 Drools-tomcat路径\bin\repositories\kie\global ,已存在

08 Drools Workbench 构建规则并发布Maven仓

找到Maven对应的仓respository地址,查看,已经构建成功

08 Drools Workbench 构建规则并发布Maven仓

连接直接访问:

http://localhost:8080/kie-drools-wb/maven2/com/myteam/excepHandler/1.0.0/ageHandler-1.0.0.jar

9:就可以在项目的POM中去引用了

Maven+Drools开发是在项目中新建FACT参数对象和DRL规则文件,

Maven+Drools Workbench则是:引用Workbench根据Jar(包含FACT对象,DRL规则文件)打好的Pom,发布到Maven仓库中,项目中直接通过Pom引入,通过kieSession调用规则;