如何使用 drools API 读取 drl 文件? drools 中是否有任何函数可以将 drl 文件解析为某些值或其他格式?
How to read drl file by using drools API? Is there any function in drools that can parse drl file into some value or other formats?
我正在尝试使用 drools workbench(或业务中心)可视化某些 drl 文件 而不是 。我找到了通过传递值来创建 drl 文件的函数。但是,我找不到做相反事情的方法。
我希望将现有的 drl 文件解析为一些值或其他可以在我的 Vue 项目中轻松使用的格式。目前我正在Drools源代码中寻找它,但找不到它。
我不想用drools workbench 因为用起来不够方便。但如果它的源代码中有一些函数或库,请告诉我。这也很有帮助。
我正在使用 drools 7.0。0.final 现在。
感谢您阅读我的问题,如果您有任何想法,请帮助我。
我不确定你想要达到什么目的,但让我给你一些提示。
drools-compiler
模块中的 org.drools.compiler.compiler.DrlParser
将解析 DRL 并生成 PackageDescr
,几乎是规则文件的 AST。以 org.drools.compiler.compiler.DrlParserTest
为例。
org.drools.compiler.builder.impl.KnowledgeBuilderImpl
将创建 Drools 运行时使用的 *Impl*
类。
或者您可以查看 drools-model-compiler
模块,其中有一个编译器 org.drools.modelcompiler.builder.ModelBuilderImpl
可以将 *Descrs
编译成我们最近创建的 Java DSL,可执行模型参见 org.drools.modelcompiler.CompilerTest
和 org.drools.modelcompiler.PatternDSLTest
如果有帮助请告诉我。
祝你好运
我正在尝试使用 drools workbench(或业务中心)可视化某些 drl 文件 而不是 。我找到了通过传递值来创建 drl 文件的函数。但是,我找不到做相反事情的方法。
我希望将现有的 drl 文件解析为一些值或其他可以在我的 Vue 项目中轻松使用的格式。目前我正在Drools源代码中寻找它,但找不到它。
我不想用drools workbench 因为用起来不够方便。但如果它的源代码中有一些函数或库,请告诉我。这也很有帮助。
我正在使用 drools 7.0。0.final 现在。
感谢您阅读我的问题,如果您有任何想法,请帮助我。
我不确定你想要达到什么目的,但让我给你一些提示。
drools-compiler
模块中的 org.drools.compiler.compiler.DrlParser
将解析 DRL 并生成 PackageDescr
,几乎是规则文件的 AST。以 org.drools.compiler.compiler.DrlParserTest
为例。
org.drools.compiler.builder.impl.KnowledgeBuilderImpl
将创建 Drools 运行时使用的 *Impl*
类。
或者您可以查看 drools-model-compiler
模块,其中有一个编译器 org.drools.modelcompiler.builder.ModelBuilderImpl
可以将 *Descrs
编译成我们最近创建的 Java DSL,可执行模型参见 org.drools.modelcompiler.CompilerTest
和 org.drools.modelcompiler.PatternDSLTest
如果有帮助请告诉我。
祝你好运