我是 Drools 和 Guvnor 的新手。我们已经创建了 DRL 文件并加载到 Guvnor 中,并且构建了包。它生成了一个 .pkg
文件。我们从 Guvnor 下载此 .pkg
文件并将其用于我们的不同项目。现在我试图查看 .pkg
文件中的内容,但我不知道如何打开它。
最佳答案
以下代码检查知识库,并写出加载到其中的所有包的名称以及这些包中的规则的名称。可能还有更多可以提取的信息,但我从未发现需要。您唯一无法获得的是规则的源代码。但根据你的解释,这可以在 Guvnor 中找到。
/**
* Return a string containing the packages used to build the knowledge base.
*/
public static String knowledgeBaseDetails(KieBase kbase) {
if (kbase == null) {
return "Knowledge Base is null.";
} else {
StringBuilder sb = new StringBuilder(
"Knowledge base built from the following packages:");
Collection<KiePackage> packages = kbase
.getKiePackages();
for (KiePackage kp : packages) {
sb.append("\n Package: [" + kp.getName() + "]");
for (Rule rule : kp.getRules()) {
sb.append("\n Rule: [" + rule.getName() + "]");
}
}
return sb.toString();
}
}
Drools 5和6几乎是一样的。一般对于早期版本的Drools,只需将Kie
更改为Knowledge
即可。
关于drools - 提取 Drools Guvnor .pkg 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24913065/