Drools7.0规则引擎KieSession空指针问题解决

问题

在使用drools7的时候,通过kmodule.xml文件加载规则的时候,在获取KieSession的时候总是报空指针。但是明明代码之前测试过是没用问题的。

解决

在碰到几次这个问题的时候,大致摸索出一个解决方案,但是问题的具体原因还需要继续跟进。问题原因大致是和Maven有关系。可能是存在缓存问题。所以在我将maven项目重新编译一下就可以了。idea上操作如下:
idea截图|center|300*200

如果compile还是不行,就先clean再compile一下。

相关代码

kmodule.xml:

<?xml version="1.0" encoding="UTF-8"?>
<kmodule xmlns="http://www.drools.org/xsd/kmodule"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <kbase name="rule1KB" packages="rules">
        <ksession name="rule1KS"/>
    </kbase>
</kmodule>

Java代码获取session:

        KieContainer kc = KieServices.Factory.get().getKieClasspathContainer("rule1KB");
        KieSession kieSession = kc.newKieSession("rule1KS");
        int i = kieSession.fireAllRules();
        System.out.println("执行了"+ i);
        kieSession.dispose();
END
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值