Groovy: Obtener duración en años

Al ejecutar el siguiente código en groovy -

import groovy.time.*
import org.codehaus.groovy.runtime.TimeCategory
def today = new Date()
use(TimeCategory)
{
  def modifiedToday = today.plus(10.minutes)
  modifiedToday = modifiedToday.plus(10.months)
  modifiedToday = modifiedToday.plus(10.years)
  def duration = modifiedToday - today
  println duration.years
  println duration.months
  println duration.days
  println duration.minutes
}

Estoy obteniendo el siguiente resultado:

0
0
3956
10

Por favor sugiera, ¿por qué obtengo años y meses como 0 y todo el valor en días? ¿Cómo obtengo el valor en años y meses?

Respuestas a la pregunta(1)

Su respuesta a la pregunta