我有一個(gè)抽象的通用“Foo”解決方案類,我的特定實(shí)現(xiàn)繼承了它。此類是通用的,并允許實(shí)現(xiàn)類定義其特定的 PlanningEntity,它擴(kuò)展了“Bar”這阻塞了 optaplanner,它會(huì)吐出如下錯(cuò)誤:未按預(yù)期克隆解決方案屬性(列表)。FieldAccessingSolutionCloner 無(wú)法識(shí)別該屬性的字段,可能是因?yàn)槠渥侄蚊Q不同。我嘗試用特定的實(shí)現(xiàn)類替換“EntityType”,并且事情似乎有效。但是,我正在嘗試提取通用功能以減少維護(hù),這使我無(wú)法提取所有共性。我也嘗試過(guò)梳理 OptaPlanner 文檔。我找不到這樣的例子。@PlanningSolutionpublic abstract class Foo <EntityType extends Bar> implements Solution<HardMediumSoftScore>{ protected HardMediumSoftScore score; protected ArrayList<EntityType> list = new ArrayList<>(); @PlanningEntityCollectionProperty public ArrayList<EntityType> getList() { return this.list; } @Override public HardMediumSoftScore getScore() { return this.score; } public void setScore(HardMediumSoftScore score) { this.score = score; }}我希望能夠在沒(méi)有 optaplanner 拋出錯(cuò)誤的情況下繼承。optaplanner 是否設(shè)置為處理泛型/繼承?我正在使用 6.5,是否有更新版本可以更好地支持此功能?
1 回答

楊魅力
TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超6個(gè)贊
在該字段上添加@DeepPlanningClone
注釋。
此外,從 遷移implements Solution
到@PlanningSolution
,請(qǐng)參閱optaplanner.org 上的升級(jí)配方。
添加回答
舉報(bào)
0/150
提交
取消