Tomcat: Conflicting module versions. Module [groovy-all is loaded in version 2.3.7 and you are trying to load version 2.4.3 Tomcat: Conflicting module versions. Module [groovy-all is loaded in version 2.3.7 and you are trying to load version 2.4.3 jenkins jenkins

Tomcat: Conflicting module versions. Module [groovy-all is loaded in version 2.3.7 and you are trying to load version 2.4.3


Gradle itself depends on Groovy (on version 2.3.7 for your version of Gradle), and so does Grails (on version 2.4.3). My suggestion is to upgrade to a version of Gradle that uses a Groovy version that is close to the one pulled in by Grails. Gradle 2.8 depends on Groovy 2.4.4, so that is close enough to version 2.4.3 to rule out any API incompatibilities.

But as Gradle would still complain about even this minor version mismatch, you need to add code to your build.gradle file to explicitly resolve the version conflict:

configurations.all {    resolutionStrategy {        force 'org.codehaus.groovy:groovy-all:2.4.4'    }}


The problem definitely comes about because of the version of gradle that you are using for your builds. While sschuberth's suggestion works, I found it not to be scaleable where you have multiple developers on various versions of gradle. Your build script would not be able to accommodate each and every one of them. The only way to accommodate them all was to exclude all versions:

configurations {    all*.exclude group: 'org.codehaus.groovy', module: 'groovy-all'}

This way, your build script will take your dependency-managed version of groovy, rather than whatever your gradle version is using.


You need to add code classpath 'org.codehaus.groovy:groovy-all:2.4.3' to project-level build.gradle and the error will fix.

`buildscript {      dependencies {          classpath 'org.codehaus.groovy:groovy-all:2.4.3'      }   }`