Comparator.comparing (...) de un campo anidado

Supongamos que tengo un modelo de dominio como este:

class Lecture {
     Course course;
     ... // getters
}

class Course {
     Teacher teacher;
     int studentSize;
     ... // getters
}

class Teacher {
     int age;
     ... // getters
}

Ahora puedo crear un Profesor Comparador como este:

    return Comparator
            .comparing(Teacher::getAge);

Pero, ¿cómo comparo las conferencias en campos anidados, como este?

    return Comparator
            .comparing(Lecture::getCourse::getTeacher:getAge) 
            .thenComparing(Lecture::getCourse::getStudentSize);

No puedo agregar un métodoLecture.getTeacherAge() en el modelo

Respuestas a la pregunta(3)

Su respuesta a la pregunta