#grails y los plugins pegajosos


Hace algún tiempo empecé a trabajar en una aplicación usando grails 2.0.0.M4 luego de actualizarla a 2.0.0 cada vez que corria una tarea tipo test-app obtenía un mensaje como:

You currently already have a version of the plugin installed [svn-1.0.1]. Do you want to update to [svn-1.0.0.M1]? [y,n]

que es muy molesto (generalmente abandono la consola y se quedaba esperando a que respondiera) entonces, aun cuando busqué directamente el plugin y no lo encontré supuse que era un problema de dependencias transitivas, para comprobarlo solo es necesario usar el comando dependency-report que genera un html con las dependencias, en mi caso los plugins fixtures y resources dependían del svn, asi que procedí a instalar las versiones actualizadas, sin embargo, obtenía el mismo mensaje y ahora otro más:

You currently already have a version of the plugin installed [resources-1.1.1]. Do you want to update to [svn-1.1.6]? [y,n]

sucede que los plugins no sólo son declarados en el application.properties, también pueden ser declarados como dependencias en el BuildConfig.groovy (para poder cargarlos en el scope apropiado y evitar dependencias) así que la solución fue editar BuildConfig.groovy:

grails.project.dependency.resolution = {
...
 plugins {
        compile ":hibernate:$grailsVersion"
        compile ":jquery:1.6.1.1"
        compile ":resources:1.1.6"

        build ":tomcat:$grailsVersion"
        
        runtime (":fixtures:1.1") {
            excludes ":svn:1.0.0.M1"
        }
        
    }
}

y listo, quizás un clean y una actualización de dependencias sean necesarios después de modificar el BuildConfig.groovy del proyecto antes de

Acerca de Nickman

Aunque crítico e Ingeniero (especializado en software), piloto de aeroplano soy (seré).

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s