JBoss Rules(別名Drools)を使用しており、それぞれに複数のルールを含むいくつかの.drlファイルがあります。複数の.drlファイルで使用できる共通のルールを定義できるように、ファイル間の重複を回避する方法はありますか?
残念ながら、どのような種類のインクルードまたはモジュール機能も存在しないようです。
JBoss Rules(別名Drools)を使用しており、それぞれに複数のルールを含むいくつかの.drlファイルがあります。複数の.drlファイルで使用できる共通のルールを定義できるように、ファイル間の重複を回避する方法はありますか?
残念ながら、どのような種類のインクルードまたはモジュール機能も存在しないようです。
.drl ファイル内から別の .drl ファイルのルールを含める方法はありません。
ただし、2 つの .drl ファイルを同じ ruleBase に追加すると、それらは同じファイルにあるかのように機能します。
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "common.drl" ) ) );
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "rules1.drl" ) ) );
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage( builder.getPackage() );