gpt4 book ai didi

java - 无法构建新的 drools 规则,错误 : Rule Compilation error : ! !!超出 65535 字节限制

转载 作者:行者123 更新时间:2023-12-01 23:11:51 24 4
gpt4 key购买 nike

我已经创建了 1032 条新的成功规则。当我想创建 1033 时出现了一些错误。

我正在使用 Drools 中的知识构建器构建新规则。这是我的代码

public KnowledgeBuilder buildRules(String ruleContent){
KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
knowledgeBuilder.add(ResourceFactory.newInputStreamResource(new ByteArrayInputStream(ruleContent.getBytes())),
ResourceType.DRL);

// check the builder for errors
if (knowledgeBuilder.hasErrors()) {
LOGGER.error(knowledgeBuilder.getErrors().toString());
throw new RuntimeException("Unable to build new drools rule, error: " + knowledgeBuilder.getErrors());
}

return knowledgeBuilder;
}

我预计创建 1033 条规则。 (已成功完成1032条规则)但我得到一个错误输出:

Unable to build new drools rule, error: Rule Compilation error : [Rule name='PROM_APPLYCHECKER_2103_G00002382']
com/indolotte/drools/pm/Rule_PROM_APPLYCHECKER_2103_G00002382191827255.java (6:877) : The code of method defaultConsequence(KnowledgeHelper, OptimizerOrderReqEVO, FactHandle)
is exceeding the 65535 bytes limit

最佳答案

65535 是 java 中方法的最大大小,没有办法绕过它。您需要缩短 ruleContent 的长度。

(也许将其分成多个?不熟悉 Droos 的工作原理。但是“Rule_PROM_APPLYCHECKER_2103_G00002382191827255”绝对太大了。)

关于java - 无法构建新的 drools 规则,错误 : Rule Compilation error : ! !!超出 65535 字节限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58371852/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com