繁体   English   中英

将Drools Guvnor 5.5升级到Drools 6.0

[英]upgrading drools guvnor 5.5 to drools 6.0

我正在使用Drools 5.4版,并且使用了changeset.xml的URL从我的Java代码中调用了drools-guvnor。

现在我要升级到drools 6.0工作台版本(让我知道是否使用骆驼版本),如何从我的java代码中调用drools工作台。

感谢Ganesh Neelekani

Drools 6中的所有内容均已变得Mavenized。 使用新的Kie API来引用规则所在的Maven工件,而不是访问changeset.xml文件。

首先,您将规则打包为“ kjar”( 有关kjars的更多信息,请参阅本文 )。 然后,在您的应用程序中,您将需要添加以下依赖项:

<dependency>
    <groupId>org.kie</groupId>
    <artifactId>kie-ci</artifactId>
    <version>${drools.version}</version>
</dependency>

然后,要在运行时动态加载规则,请使用ResourceChangeScanner的替代品,即KieScanner

ReleaseId releaseId = KieServices.Factory.get().newReleaseId( "com.acme", "my-rules", "0.0.1-SNAPSHOT" );
KieContainer kc = KieServices.Factory.get().newKieContainer( releaseId );
KieScanner kscanner = KieServices.Factory.get().newKieScanner( kcontainer );
kscanner.scanNow() // this will dynamically resolve the rules artifact and build it

从那时起,您可以使用连接到该扫描仪的k容器创建KieSessions。 通过调用scanNow(),您可以告诉扫描程序轮询该工件以进行更改。 它将自动构建检测到的对该工件的更新。 您还可以通过再次调用scanNow()来强制进行重建。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM