Guice proxying para apoyar la dependencia circular

Recibo el siguiente error en mi código en el lanzamiento:

Se ha intentado hacer proxy con com.bar.Foo para admitir una dependencia circular, pero no es una interfaz.

¿Cómo funciona exactamente este proxy? Si solo lanzo suficientes clases detrás de las interfaces, ¿todo estará bien?

(Sé que las dependencias circulares suelen ser un olor de código, pero creo que en este caso está bien).

Respuestas a la pregunta(3)

Su respuesta a la pregunta