在 OptaPlanner 中使用 DSL 和 DSLR

Using DSL and DSLR in OptaPlanner

我是 OptaPlanner 中 NQueens 示例的新手。 在 nQueensSolverConfig.xml 文件中有一个 scoreDrl 标签,我可以在其中放置我的 DRL 文件。

现在我对使用 DSL 和 DSLR 文件而不是 DRL 文件很感兴趣,这样规则看起来更像自然语言。

我尝试在配置文件中创建 scoreDsl、dslr 和 dsl 标签,但没有成功。

如何做到这一点?

非常感谢。

<scoreDsl>(还)不可用,因为 ScoreDirectorFactoryConfig.java.

上没有它的字段

我相信如果您在 6.2 中的 <scoreDrl> 中指定 DSL 资源,它实际上会起作用(是的,我知道这在语义上是不正确的),因为它最终会调用此代码:kieFileSystem.write(kieResources.newClassPathResource(scoreDrl, "UTF-8"));所以任何 KIE 资源实际上都会被接受。

或者,先构建您自己的 KieBase,然后使用 ScoreDirectorFactoryConfig.setKieBase()