You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by kl...@apache.org on 2016/03/18 22:43:34 UTC

[09/14] incubator-geode git commit: GEODE-27: Enabling transitive dependencies in the build

GEODE-27: Enabling transitive dependencies in the build

Removing the code from the build that disabled transitive dependencies.
Adding excludes and forcing some versions to clean up the list of jars
we are pulling in to match what it was before I enabled transitive
dependencies.

A couple of versions don't match because the versions we were pulling in
before were not consistent across submodules for commons logging and
commons-beanutils.

Some of these excludes, and all of the forced versions look suspect.
They need to be reviewed to see if we really need them.


Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/dc94a890
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/dc94a890
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/dc94a890

Branch: refs/heads/feature/GEODE-1050
Commit: dc94a890d94381e9fec1b55f3523aa5c2ab379e0
Parents: e2695a5
Author: Dan Smith <up...@apache.org>
Authored: Thu Mar 3 10:35:07 2016 -0800
Committer: Dan Smith <up...@apache.org>
Committed: Fri Mar 18 13:43:55 2016 -0700

----------------------------------------------------------------------
 extensions/geode-modules-hibernate/build.gradle | 15 +++-
 extensions/geode-modules-tomcat7/build.gradle   | 11 +--
 extensions/geode-modules/build.gradle           |  7 +-
 geode-assembly/build.gradle                     | 14 +++-
 geode-core/build.gradle                         | 72 +++++++++++---------
 geode-junit/build.gradle                        |  4 +-
 geode-lucene/build.gradle                       |  4 +-
 geode-pulse/build.gradle                        | 25 ++++---
 geode-rebalancer/build.gradle                   |  9 ++-
 geode-web-api/build.gradle                      | 56 ++++++++++-----
 geode-web/build.gradle                          | 30 +++++---
 gradle/dependency-resolution.gradle             | 26 ++++---
 gradle/java.gradle                              | 27 --------
 13 files changed, 179 insertions(+), 121 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/extensions/geode-modules-hibernate/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/geode-modules-hibernate/build.gradle b/extensions/geode-modules-hibernate/build.gradle
index 34a76eb..5169b04 100644
--- a/extensions/geode-modules-hibernate/build.gradle
+++ b/extensions/geode-modules-hibernate/build.gradle
@@ -17,11 +17,20 @@
 
 dependencies {
   compile project(':extensions/geode-modules')
-  compile 'org.hibernate:hibernate-core:' + project.'hibernate.version'
-  compile 'org.hibernate:hibernate-annotations:' + project.'hibernate.version'
+  compile ('org.hibernate:hibernate-annotations:' + project.'hibernate.version') {
+    //TODO - do we want these extensions, especially since the show up in testruntime?
+    //If they were needed by our tests, doesn't that mean they will be needed in production?
+    exclude module: 'commons-collections'
+    exclude module: 'dom4j'
+    exclude module: 'hibernate-commons-annotations'
+    exclude module: 'hibernate-jpa-2.0-api'
+    exclude module: 'jta'
+  }
   compile 'org.eclipse.persistence:javax.persistence:' + project.'javax.persistence-api.version'
 
-  runtime 'dom4j:dom4j:' + project.'dom4j.version'
+  runtime ('dom4j:dom4j:' + project.'dom4j.version') {
+    exclude module: 'xml-apis'
+  }
 
   testRuntime 'commons-collections:commons-collections:' + project.'commons-collections.version'
   testRuntime 'org.hibernate:hibernate-commons-annotations:' + project.'hibernate-commons-annotations.version'

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/extensions/geode-modules-tomcat7/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/geode-modules-tomcat7/build.gradle b/extensions/geode-modules-tomcat7/build.gradle
index c45fa48..07619e8 100644
--- a/extensions/geode-modules-tomcat7/build.gradle
+++ b/extensions/geode-modules-tomcat7/build.gradle
@@ -30,10 +30,13 @@ dependencies {
     exclude group: 'org.apache.tomcat'
   }
 
-  compile 'org.apache.tomcat:tomcat-api:' + project.'tomcat7.version'
-  compile 'org.apache.tomcat:tomcat-catalina:' + project.'tomcat7.version'
-  compile 'org.apache.tomcat:tomcat-coyote:' + project.'tomcat7.version'
-  compile 'org.apache.tomcat:tomcat-util:' + project.'tomcat7.version'
+  compile ('org.apache.tomcat:tomcat-catalina:' + project.'tomcat7.version') {
+    exclude module: 'tomcat-annotations-api'
+    exclude module: 'tomcat-servlet-api'
+  }
+  compile ('org.apache.tomcat:tomcat-coyote:' + project.'tomcat7.version') {
+    exclude module: 'tomcat-servlet-api'
+  }
   compile 'org.apache.tomcat:tomcat-juli:' + project.'tomcat7.version'
 
   testCompile 'org.httpunit:httpunit:' + project.'httpunit.version'

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/extensions/geode-modules/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/geode-modules/build.gradle b/extensions/geode-modules/build.gradle
index 1389585..e007bca 100644
--- a/extensions/geode-modules/build.gradle
+++ b/extensions/geode-modules/build.gradle
@@ -28,8 +28,11 @@ dependencies {
   compile project(':geode-core')
   
   compile 'org.slf4j:slf4j-api:' + project.'slf4j-api.version'
-  compile 'org.apache.tomcat:catalina:' + project.'tomcat6.version'
-  compile 'org.apache.tomcat:catalina-ha:' + project.'tomcat6.version'
+  compile ('org.apache.tomcat:catalina-ha:' + project.'tomcat6.version') {
+    exclude module: 'annotations-api'
+    exclude module: 'coyote'
+    exclude module: 'tribes'
+  }
   compile 'org.apache.tomcat:juli:' + project.'tomcat6.version'
 
   testCompile 'org.httpunit:httpunit:' + project.'httpunit.version'

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-assembly/build.gradle
----------------------------------------------------------------------
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 2213614..186590e 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -49,8 +49,18 @@ configurations {
 
 dependencies {
   provided project(':geode-core')
-  bundled 'org.springframework.data:spring-data-commons:' + project.'spring-data-commons.version'
-  bundled 'org.springframework.data:spring-data-gemfire:' + project.'spring-data-gemfire.version'
+  bundled ('org.springframework.data:spring-data-commons:' + project.'spring-data-commons.version') {
+    transitive=false
+  }
+  bundled ('org.springframework.data:spring-data-gemfire:' + project.'spring-data-gemfire.version') {
+    transitive=false
+  }
+  bundled ('org.springframework:spring-expression:' + project.'springframework.version') {
+    transitive=false
+  }
+  bundled ('org.springframework:spring-tx:' + project.'springframework.version') {
+    transitive=false
+  }
   
   archives project(':geode-common')  
   archives project(':geode-json')  

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-core/build.gradle
----------------------------------------------------------------------
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 6ecedef..fe5ab7e 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -33,56 +33,62 @@ dependencies {
   provided files("${System.getProperty('java.home')}/../lib/tools.jar")
   compile 'org.jgroups:jgroups:3.6.7.Final'
   compile 'antlr:antlr:' + project.'antlr.version'
-  compile 'com.fasterxml.jackson.core:jackson-annotations:' + project.'jackson.version'
-  compile 'com.fasterxml.jackson.core:jackson-core:' + project.'jackson.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + project.'jackson.version'
-  provided 'com.google.guava:guava:' + project.'guava.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
-  compile 'commons-logging:commons-logging:' + project.'commons-logging.version'
-  compile 'commons-modeler:commons-modeler:' + project.'commons-modeler.version'
+  compile ('commons-modeler:commons-modeler:' + project.'commons-modeler.version') {
+    exclude module: 'commons-digester'
+    exclude module: 'commons-logging-api'
+    exclude module: 'mx4j-jmx'
+    exclude module: 'xml-apis'
+  }
   compile 'io.netty:netty-all:' + project.'netty-all.version'
   compile 'it.unimi.dsi:fastutil:' + project.'fastutil.version'
-  compile 'javax.activation:activation:' + project.'activation.version'
   compile 'javax.mail:javax.mail-api:' + project.'javax.mail-api.version'
   compile 'javax.resource:javax.resource-api:' + project.'javax.resource-api.version'
-  compile 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
-  compile 'javax.transaction:javax.transaction-api:' + project.'javax.transaction-api.version'
   compile 'mx4j:mx4j:' + project.'mx4j.version'
   compile 'mx4j:mx4j-remote:' + project.'mx4j.version'
   compile 'mx4j:mx4j-tools:' + project.'mx4j.version'
   compile 'net.java.dev.jna:jna:' + project.'jna.version'
-  compile 'jline:jline:' + project.'jline.version'
-  provided 'org.apache.hadoop:hadoop-common:' + project.'hadoop.version'
-  provided 'org.apache.hadoop:hadoop-annotations:' + project.'hadoop.version'
-  provided 'org.apache.hadoop:hadoop-hdfs:' + project.'hadoop.version'
-  provided 'org.apache.hadoop:hadoop-mapreduce-client-core:' + project.'hadoop.version'
-  provided 'org.apache.hbase:hbase:' + project.'hbase.version'
+  provided ('org.apache.hadoop:hadoop-common:' + project.'hadoop.version') {
+    transitive=false
+  }
+  provided ('org.apache.hadoop:hadoop-annotations:' + project.'hadoop.version') {
+    transitive=false
+  }
+  provided ('org.apache.hadoop:hadoop-hdfs:' + project.'hadoop.version') {
+    transitive=false
+  }
+  provided ('org.apache.hadoop:hadoop-mapreduce-client-core:' + project.'hadoop.version') {
+    transitive=false
+  }
+  provided ('org.apache.hbase:hbase:' + project.'hbase.version') {
+    transitive=false
+  }
+
+  compile 'com.google.guava:guava:' + project.'guava.version'
+
   compile 'org.apache.logging.log4j:log4j-api:' + project.'log4j.version'
   compile 'org.apache.logging.log4j:log4j-core:' + project.'log4j.version'
+  runtime 'org.fusesource.jansi:jansi:' + project.'jansi.version'
   runtime 'org.apache.logging.log4j:log4j-slf4j-impl:' + project.'log4j.version'
   runtime 'org.apache.logging.log4j:log4j-jcl:' + project.'log4j.version'
   runtime 'org.apache.logging.log4j:log4j-jul:' + project.'log4j.version'
-  compile 'org.eclipse.jetty:jetty-http:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-io:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-security:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-server:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-servlet:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-util:' + project.'jetty.version'
   compile 'org.eclipse.jetty:jetty-webapp:' + project.'jetty.version'
-  compile 'org.eclipse.jetty:jetty-xml:' + project.'jetty.version'
-  compile 'org.fusesource.jansi:jansi:' + project.'jansi.version'
-  compile 'org.slf4j:slf4j-api:' + project.'slf4j-api.version'
-  runtime 'org.springframework:spring-aop:' + project.'springframework.version'
-  compile 'org.springframework:spring-beans:' + project.'springframework.version' //only used in AbstractCommandsController
-  compile 'org.springframework:spring-context:' + project.'springframework.version'
-  compile 'org.springframework:spring-context-support:' + project.'springframework.version'
-  compile 'org.springframework:spring-core:' + project.'springframework.version'
-  runtime 'org.springframework:spring-expression:' + project.'springframework.version'
-  compile 'org.springframework:spring-tx:' + project.'springframework.version'
-  compile 'org.springframework:spring-web:' + project.'springframework.version'
-  compile 'org.springframework:spring-webmvc:' + project.'springframework.version'
-  compile 'org.springframework.shell:spring-shell:' + project.'spring-shell.version'
+  runtime ('org.springframework:spring-aop:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+  }
+  compile ('org.springframework:spring-webmvc:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-aop'
+  }
+  compile ('org.springframework.shell:spring-shell:' + project.'spring-shell.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'asm'
+    exclude module: 'cglib'
+    exclude module: 'guava'
+    exclude module: 'spring-aop'
+  }
   compile 'org.xerial.snappy:snappy-java:' + project.'snappy-java.version'
  
   compile project(':geode-common')

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-junit/build.gradle
----------------------------------------------------------------------
diff --git a/geode-junit/build.gradle b/geode-junit/build.gradle
index 7aa6562..3e4eb22 100755
--- a/geode-junit/build.gradle
+++ b/geode-junit/build.gradle
@@ -17,6 +17,8 @@
 
 dependencies {
   testCompile 'commons-lang:commons-lang:' + project.'commons-lang.version'
-  compile 'junit:junit:' + project.'junit.version'
+  compile ('junit:junit:' + project.'junit.version') {
+    exclude module: 'hamcrest-core'
+  }
   compile 'org.hamcrest:hamcrest-all:' + project.'hamcrest-all.version'
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-lucene/build.gradle
----------------------------------------------------------------------
diff --git a/geode-lucene/build.gradle b/geode-lucene/build.gradle
index 55aa756..c1eeb2e 100644
--- a/geode-lucene/build.gradle
+++ b/geode-lucene/build.gradle
@@ -22,7 +22,9 @@ dependencies {
     compile 'org.apache.lucene:lucene-analyzers-common:' + project.'lucene.version'
     compile 'org.apache.lucene:lucene-core:' + project.'lucene.version'
     compile 'org.apache.lucene:lucene-queries:' + project.'lucene.version'
-    compile 'org.apache.lucene:lucene-queryparser:' + project.'lucene.version'
+    compile ('org.apache.lucene:lucene-queryparser:' + project.'lucene.version') {
+      exclude module: 'lucene-sandbox'
+    }
 
     testCompile project(':geode-junit')
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-pulse/build.gradle
----------------------------------------------------------------------
diff --git a/geode-pulse/build.gradle b/geode-pulse/build.gradle
index 6dc7b02..045d903 100755
--- a/geode-pulse/build.gradle
+++ b/geode-pulse/build.gradle
@@ -30,23 +30,30 @@ dependencies {
 
 
 
-  runtime 'org.springframework:spring-aop:' + project.'springframework.version'
   compile 'org.springframework:spring-beans:' + project.'springframework.version'
-  compile 'org.springframework:spring-context:' + project.'springframework.version'
-  compile 'org.springframework:spring-core:' + project.'springframework.version'
-  compile 'org.springframework:spring-web:' + project.'springframework.version'
-  runtime 'org.springframework:spring-webmvc:' + project.'springframework.version'
   
   compile 'commons-beanutils:commons-beanutils:' + project.'commons-beanutils.version'
   compile 'commons-collections:commons-collections:' + project.'commons-collections.version'
   compile 'commons-digester:commons-digester:' + project.'commons-digester.version'
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
   compile 'org.springframework.ldap:spring-ldap-core:' + project.'spring-ldap-core.version'
-  compile 'org.springframework.security:spring-security-config:' + project.'spring-security.version'
-  compile 'org.springframework.security:spring-security-core:' + project.'spring-security.version'
   runtime 'org.springframework:spring-expression:' + project.'springframework.version'
-  compile 'org.springframework.security:spring-security-ldap:' + project.'spring-security.version'
-  compile 'org.springframework.security:spring-security-web:' + project.'spring-security.version'
+  compile ('org.springframework.security:spring-security-config:' + project.'spring-security.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-expression'
+  }
+  compile ('org.springframework.security:spring-security-ldap:' + project.'spring-security.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-asm'
+    exclude module: 'spring-expression'
+    exclude module: 'spring-jdbc'
+  }
+  compile ('org.springframework.security:spring-security-web:' + project.'spring-security.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'spring-asm'
+    exclude module: 'spring-expression'
+    exclude module: 'spring-jdbc'
+  }
   compile 'org.springframework:spring-tx:' + project.'spring-tx.version'
   compile 'com.fasterxml.jackson.core:jackson-annotations:' + project.'jackson.version'
   compile 'com.fasterxml.jackson.core:jackson-core:' + project.'jackson.version'

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-rebalancer/build.gradle
----------------------------------------------------------------------
diff --git a/geode-rebalancer/build.gradle b/geode-rebalancer/build.gradle
index b9992e9..c21dbf1 100644
--- a/geode-rebalancer/build.gradle
+++ b/geode-rebalancer/build.gradle
@@ -19,11 +19,16 @@ dependencies {
   provided project(':geode-common')
   provided project(':geode-core')
 
-  compile 'org.quartz-scheduler:quartz:' + project.'quartz.version'
+  compile ('org.quartz-scheduler:quartz:' + project.'quartz.version') {
+    exclude module: 'c3p0'
+    exclude module: 'slf4j-api'
+  }
   testCompile project(':geode-junit')
 
   // the following test dependencies are needed for mocking cache instance
   testRuntime 'org.apache.hadoop:hadoop-common:' + project.'hadoop.version'
   testRuntime 'org.apache.hadoop:hadoop-hdfs:' + project.'hadoop.version'
-  runtime 'org.apache.hbase:hbase:' + project.'hbase.version'
+  testRuntime ('org.apache.hbase:hbase:' + project.'hbase.version') {
+    transitive = false
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-web-api/build.gradle
----------------------------------------------------------------------
diff --git a/geode-web-api/build.gradle b/geode-web-api/build.gradle
index dd5f5ca..6a6599e 100755
--- a/geode-web-api/build.gradle
+++ b/geode-web-api/build.gradle
@@ -20,33 +20,55 @@ apply plugin: 'war'
 dependencies {
 
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
-  compile 'commons-fileupload:commons-fileupload:' + project.'commons-fileupload.version'
+  compile ('commons-fileupload:commons-fileupload:' + project.'commons-fileupload.version') {
+    exclude module: 'commons-io'
+  }
   compile 'com.fasterxml:classmate:' + project.'classmate.version'
   compile 'com.fasterxml.jackson.core:jackson-annotations:' + project.'jackson.version'
   compile 'com.fasterxml.jackson.core:jackson-core:' + project.'jackson.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + project.'jackson.version'
   compile 'com.fasterxml.jackson.module:jackson-module-scala_2.10:' + project.'jackson-module-scala_2.10.version'
   compile 'com.google.guava:guava:' + project.'guava.version'
-  compile 'com.mangofactory:swagger-springmvc:' + project.'swagger-springmvc.version'
-  compile 'com.thoughtworks.paranamer:paranamer:' + project.'paranamer.version'
+  compile ('com.mangofactory:swagger-springmvc:' + project.'swagger-springmvc.version') { 
+    exclude module: 'aopalliance'
+    exclude module: 'asm'
+    exclude module: 'cglib'
+    exclude module: 'commons-logging'
+    exclude module: 'jackson-jaxrs-json-provider'
+    exclude module: 'jackson-jaxrs-json-provider'
+    exclude module: 'jackson-module-jsonSchema'
+    exclude module: 'joda-convert'
+    exclude module: 'joda-time'
+    exclude module: 'scalap'
+    exclude module: 'slf4j-api'
+    exclude module: 'spring-aop'
+    exclude module: 'spring-beans'
+    exclude module: 'spring-context'
+    exclude module: 'spring-core'
+    exclude module: 'spring-expression'
+    exclude module: 'spring-webmvc'
+    exclude module: 'spring-web'
+  }
   compile 'com.wordnik:swagger-annotations:' + project.'swagger.version'
-  compile 'com.wordnik:swagger-core_2.10:' + project.'swagger.version'
   compile 'org.json4s:json4s-ast_2.10:' + project.'json4s.version'
-  compile 'org.json4s:json4s-ext_2.10:' + project.'json4s.version'
-  compile 'org.json4s:json4s-core_2.10:' + project.'json4s.version'
-  compile 'org.json4s:json4s-jackson_2.10:' + project.'json4s.version'
-  compile 'org.json4s:json4s-native_2.10:' + project.'json4s.version'
   compile 'org.scala-lang:scala-library:' + project.'scala.version'
   compile 'org.scala-lang:scala-reflect:' + project.'scala.version'
-  compile 'org.springframework.hateoas:spring-hateoas:' + project.'spring-hateos.version'
-  runtime 'org.springframework:spring-aop:' + project.'springframework.version'
-  compile 'org.springframework:spring-aspects:' + project.'springframework.version'
-  runtime 'org.springframework:spring-beans:' + project.'springframework.version'
-  runtime 'org.springframework:spring-context:' + project.'springframework.version'
-  runtime 'org.springframework:spring-expression:' + project.'springframework.version'
-  compile 'org.springframework:spring-oxm:' + project.'springframework.version'
-  runtime 'org.springframework:spring-web:' + project.'springframework.version'
-  runtime 'org.springframework:spring-webmvc:' + project.'springframework.version'
+  compile ('org.springframework.hateoas:spring-hateoas:' + project.'spring-hateos.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'commons-logging'
+    exclude module: 'objenesis'
+    exclude module: 'slf4j-api'
+    exclude module: 'spring-core'
+  }
+  compile ('org.springframework:spring-aspects:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'aspectjweaver'
+  }
+  compile ('org.springframework:spring-oxm:' + project.'springframework.version') {
+    exclude module: 'commons-logging'
+    exclude module: 'spring-core'
+    exclude module: 'spring-beans'
+  }
 
   provided 'javax.servlet:javax.servlet-api:' + project.'javax.servlet-api.version'
   provided project(':geode-core')

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/geode-web/build.gradle
----------------------------------------------------------------------
diff --git a/geode-web/build.gradle b/geode-web/build.gradle
index 320782d..1173705 100755
--- a/geode-web/build.gradle
+++ b/geode-web/build.gradle
@@ -18,16 +18,26 @@
 apply plugin: 'war'
 
 dependencies {
-  runtime 'org.springframework:spring-aspects:' + project.'springframework.version'
-  runtime 'org.springframework:spring-aop:' + project.'springframework.version'
-  runtime 'org.springframework:spring-beans:' + project.'springframework.version'
-  runtime 'org.springframework:spring-context:' + project.'springframework.version'
-  runtime 'org.springframework:spring-expression:' + project.'springframework.version'
-  runtime 'org.springframework:spring-oxm:' + project.'springframework.version'
-  runtime 'org.springframework:spring-web:' + project.'springframework.version'
-  runtime 'org.springframework:spring-webmvc:' + project.'springframework.version'
-
-  runtime 'commons-fileupload:commons-fileupload:' + project.'commons-fileupload.version'
+  runtime ('org.springframework:spring-aspects:' + project.'springframework.version') {
+    exclude module: 'aspectjweaver'
+    exclude module: 'aopalliance'
+    exclude module: 'spring-core'
+    exclude module: 'spring-expression'
+  }
+  runtime ('org.springframework:spring-oxm:' + project.'springframework.version') {
+    exclude module: 'commons-logging'
+    exclude module: 'spring-beans'
+    exclude module: 'spring-core'
+  }
+  runtime ('org.springframework:spring-webmvc:' + project.'springframework.version') {
+    exclude module: 'aopalliance'
+    exclude module: 'aspectjweaver'
+    exclude module: 'spring-core'
+    exclude module: 'spring-expression'
+  }
+  runtime ('commons-fileupload:commons-fileupload:' + project.'commons-fileupload.version') {
+    exclude module: 'commons-io'
+  }
 
   testCompile 'org.springframework:spring-test:' + project.'springframework.version'
   

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/gradle/dependency-resolution.gradle
----------------------------------------------------------------------
diff --git a/gradle/dependency-resolution.gradle b/gradle/dependency-resolution.gradle
index 1e2b62b..e7f1914 100644
--- a/gradle/dependency-resolution.gradle
+++ b/gradle/dependency-resolution.gradle
@@ -17,17 +17,23 @@
 subprojects {
   configurations.all {
     resolutionStrategy {
-    //  failOnVersionConflict()
+      //failOnVersionConflict()
 
-//    exclude module: 'aopalliance'
-  //    exclude 'asm'
-  //    exclude 'aspectjweaver'
-  //    exclude 'cglib'
-      
-
-  // Force certain versions of transitive dependencies
-  //    force 'asm:asm-all:3.3.1'
-  //    force 'asm:asm-all:3.3.1'
+      //Force certain versions of transitive dependencies
+      //These are forced to match our old non-transitive configuration
+      //These force statements should be removed and tested with the automatically
+      //resolved version
+      force 'commons-logging:commons-logging:' + project.'commons-logging.version'
+      force 'org.springframework:spring-context-support:' + project.'springframework.version'
+      force 'org.springframework:spring-context-support:' + project.'springframework.version'
+      force 'org.springframework:spring-context:' + project.'springframework.version'
+      force 'org.springframework:spring-web:' + project.'springframework.version'
+      force 'org.springframework:spring-tx:' + project.'springframework.version'
+      force 'org.springframework:spring-webmvc:' + project.'springframework.version'
+      force 'javax.activation:activation:' + project.'activation.version'
+      force 'commons-beanutils:commons-beanutils:' + project.'commons-beanutils.version'
+      force 'com.thoughtworks.paranamer:paranamer:' + project.'paranamer.version'
+      force 'jline:jline:' + project.'jline.version'
     }
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/dc94a890/gradle/java.gradle
----------------------------------------------------------------------
diff --git a/gradle/java.gradle b/gradle/java.gradle
index ba1122b..9f0ff25 100644
--- a/gradle/java.gradle
+++ b/gradle/java.gradle
@@ -61,33 +61,6 @@ subprojects {
     }
   }
 
-  // Here we want to disable all transitive dependencies on external artifacts.  This
-  // allows us to lock down library versions.  However, we want project dependencies to
-  // be transitive such that the libraries of a dependent project are automatically included.
-  configurations.all {
-    dependencies.all { dep ->
-      if (dep instanceof ModuleDependency && !(dep instanceof ProjectDependency)) {
-        dep.transitive = false
-      }
-    }
-  }
-
-  configurations.testCompile {
-    dependencies.all { dep ->
-      if (dep instanceof ModuleDependency) {
-        dep.transitive = true
-      }
-    }
-  }
-
-  configurations.testRuntime {
-    dependencies.all { dep ->
-      if (dep instanceof ModuleDependency) {
-        dep.transitive = true
-      }
-    }
-  }
- 
   // This ensures that javadoc and source jars also have any prefix paths stripped and will
   // be created as libs/foo-sources.jar instead of libs/extensions/foo-sources.jar for example.
   tasks.all { task ->