drools规则编译错误-只能导入类型解析为包

bt1cpqcv  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(588)

我使用kiemaven插件将所有规则编译成kjar。
在我运行maven命令mvn clean install-dgeneratemodel=yes之后,出现如下编译器错误:

[WARNING] ClassNotFoundException occured!
java.lang.ClassNotFoundException: Unable to find class 'com.rules.engine.service.RuleValidationErrorServiceImpl'

Error importing : 'com.model.rules.CodeRule'
Rule Compilation error : [Rule name='1.1.a']
    com/rule2/Rule_1$u46$1$u46$a2059806722.java (2:38) : Only a type can be imported. com.model.rules.CodeRule resolves to a package
    com/rule2/Rule_1$u46$1$u46$a2059806722.java (7:417) : $responseCodeRule cannot be resolved
    com/rule2/Rule_1$u46$1$u46$a2059806722.java (7:444) : ruleValidationErrorService cannot be resolved
    com/rule2/Rule_1$u46$1$u46$a2059806722.java (8:487) : $responseCodeRule cannot be resolved

但奇怪的是,即使有编译错误,构建还是成功的。有一个jar,它将所有这些规则编译成类。
我做了很多搜索,但还是找不出来。任何人谁可能有这样的经验,请帮助我解决这些编译错误。超级感谢!

b1uwtaje

b1uwtaje1#

这看起来确实像是可执行模型编译器编译中的一个bug,您能检查一下规则1$u46$1$u46$a2059806722.java的.class文件是否在kjar中生成吗?
你可以用 jar tf kiejarname.jar 我也看到文件了
同时,你能为我们提供这些规则的复制者吗?
非常感谢你

相关问题