工作环境:Drools 5.5.0.FINAL,JDK1.7

我正在开发一个Eclipse插件,可以在Drools的帮助下分析某些数据。
我已经制作了一个Eclipse视图,该视图应该包含并显示已加载的“ Drools-rules”。
是否有一种优雅的方法来加载某些信息,例如规则名称?

准备“ Rule Bean”并在处理“ then-clause”时填充信息,这并不会让我觉得这是正确的方法。

有什么建议么?

最佳答案

添加资源后,可以通过访问KnowledgeBuilder界面从所有KnowledgePack中获取规则。

例如

    KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory
            .newKnowledgeBuilder(knowledgeBuilderConfig);
    knowledgeBuilder.add(ResourceFactory.newClassPathResource(ruleFile),
            ResourceType.DRL);

    Collection<KnowledgePackage> packages = knowledgeBuilder
            .getKnowledgePackages();
    for (KnowledgePackage knowledgePackage : packages) {
        for (Rule rule : knowledgePackage.getRules()) {
            System.out.println(rule.getName());
        }
    }

07-27 18:05