Я пытаюсь решить проблему расписания с помощью OptaPlanner, но перед вами столкнулась проблема, которая может быть связана с проблемой клонирования. Почему, когда мой планирование метод сбора лицо выглядит, чтоCloning PlanningSolution в OptaPlanner
@PlanningEntityCollectionProperty
public List<Lesson> getLessons() {
return getProject().getLessons();
}
Я получаю ошибку
java.lang.IllegalStateException: The solutionProperty (уроки) не был клонирован, как и ожидалось. FieldAccessingSolutionCloner не смог распознать поле этого свойства, возможно, потому, что его имя поля отличается.
но, когда метод выглядит
@PlanningEntityCollectionProperty
public List<Lesson> getLessons() {
if (lessons == null) {
lessons = getProject().getLessons();
}
return lessons;
}
все в порядке. Что может быть причиной? Почему я получаю эту ошибку? Спасибо за любую помощь.