Por que devo incluir uma dependência gradle como `@ aar`

Por que (ou não) devo incluir uma dependência gradle como@aar,

Quais são os benefícios / desvantagens, se houver?

Como você pode ver, adicionei @aar às bibliotecas abaixo que as suportam. Mas tudo parecia funcionar antes de fazer isso também ...

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
    compile 'com.google.android.gms:play-services-maps:7.3.+'
    compile 'com.google.guava:guava:18.0'
    compile 'com.octo.android.robospice:robospice-spring-android:1.4.14'
    compile 'org.codehaus.jackson:jackson-mapper-asl:1.9.13'
    compile 'com.mcxiaoke.volley:library-aar:1.0.0@aar'
    compile 'de.psdev.licensesdialog:licensesdialog:1.7.0@aar'
}

questionAnswers(2)

yourAnswerToTheQuestion