blob: 13c75252383ca55e78421ac432447470111e899d [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
// Versions of Dependencies;
def asmVersion = '5.0.4'
def bonecpVersion = '0.8.0.RELEASE'
def bouncyVersion = '1.52'
def commonsDbcpVersion = '1.4' // Should be moved to commons-dbcp2
def commonsLangVersion = '2.6' // Should be moved to commons-lang3
def derbyVersion = '10.11.1.1'
def dnsJavaVersion = '2.1.7'
def ehcacheVersion = '2.10.0'
def elasticsearchVersion = '1.6.0'
def freemarkerVersion = '2.3.22'
def groovyVersion = '2.4.3'
def h2Version = '1.4.187'
def hazelcastVersion = '3.5'
def httpClientVersion = '4.2.2' // 4.3.4 exists
def jacksonVersion = '2.5.4'
def javascriptVersion = '1.7.7'
def javasqlgeneratorVersion = '0.3.2'
def jcloudsVersion = '1.9.0'
def jdbmVersion = '2.4'
def jedisVersion = '2.7.2'
def jettyVersion = '9.2.11.v20150529' // 9.3.x Tests fail!
def jgoodiesLooksVersion = '2.5.3'
def jodaMoneyVersion = '0.10.0'
def jodaTimeVersion = '2.8.1'
def jtaVersion = '1.1'
def leveldbVersion = '0.7'
def leveldbJniVersion = '1.8'
def liquibaseVersion = '3.4.0'
def logbackVersion = '1.1.3'
def mongodbVersion = '2.13.2' // 3.0.x Fails to compile!
def mysqlVersion = '5.1.35'
def orgJsonVersion = '20130213'
def osgiVersion = '4.2.0' // 4.3.0 Fails to compile! - 5.0.0 exists
def pdfboxVersion = '1.8.5'
def postgresqlVersion = '9.4-1201-jdbc41'
def prefuseVersion = '0.21'
def restletVersion = '2.3.4'
def rdfVersion = '2.7.9'
def riakVersion = '1.4.4' // 2.0.x Fails to compile!
def scalaVersion = '2.11.6'
def servletVersion = '3.1.0'
def shiroVersion = '1.2.3'
def skedVersion = '2.1'
def slf4jVersion = '1.7.12'
def solrVersion = "1.4.1" // 4.8.1 Fails to compile!
def springVersion = '4.1.7.RELEASE'
def spymemcachedVersion = '2.12.0'
def sqliteVersion = '3.8.10.1'
def velocityVersion = '1.7'
def wicketVersion = '1.5.8' // 6.15.0 Samples fails to compile!
def wicketStatelessVersion = '1.5.0'
def woodstoxVersion = '4.4.1'
def yammerMetricsVersion = '2.2.0'
def antVersion = '1.9.5'
def awaitilityVersion = '1.6.3'
def easyMockVersion = '3.3.1'
def jmockVersion = '2.8.1'
def junitVersion = '4.11'
def mockitoVersion = '1.10.19'
def testNgVersion = '6.9.4'
def restAssuredVersion= '2.4.1'
def xmlunitVersion = '1.6'
// build a map of the dependency artifacts to use. Allows centralized definition of the version of artifacts to
// use. In that respect it serves a role similar to <dependencyManagement> in Maven
rootProject.ext {
libraries = [
// Ant
ant: "org.apache.ant:ant:$antVersion",
ant_junit: "org.apache.ant:ant-junit:$antVersion",
// ASM
asm: "org.ow2.asm:asm:$asmVersion",
asm_util: "org.ow2.asm:asm-util:$asmVersion",
asm_commons: "org.ow2.asm:asm-commons:$asmVersion",
// OSGi
osgi_core: "org.osgi:org.osgi.core:$osgiVersion",
osgi_compendium: "org.osgi:org.osgi.compendium:$osgiVersion",
osgi_enterprise: "org.osgi:org.osgi.enterprise:$osgiVersion",
// logging
slf4j_api: "org.slf4j:slf4j-api:$slf4jVersion",
slf4j_simple: "org.slf4j:slf4j-simple:$slf4jVersion",
logback: 'ch.qos.logback:logback-classic:' + logbackVersion,
jcl_slf4j: "org.slf4j:jcl-over-slf4j:$slf4jVersion",
jcl_api: 'commons-logging:commons-logging-api:99.0-does-not-exist', //ensure it is never used.
jcl: 'commons-logging:commons-logging:99.0-does-not-exist', // ensure it is never used.
// org.json
org_json: "org.codeartisans:org.json:$orgJsonVersion",
// Restlet
restlet: [
"org.restlet.jee:org.restlet:$restletVersion",
// "org.restlet.jee:org.restlet.ext.ssl:$restletVersion",
"org.restlet.jee:org.restlet.ext.atom:$restletVersion",
"org.restlet.jee:org.restlet.ext.servlet:$restletVersion",
"org.restlet.jee:org.restlet.ext.slf4j:$restletVersion"
],
// Scala
scala: "org.scala-lang:scala-library:$scalaVersion",
// Spring
spring_core: [
"org.springframework:spring-beans:$springVersion",
"org.springframework:spring-context:$springVersion"
],
spring_testsupport: [
"org.springframework:spring-test:$springVersion"
],
// RDF
sesame: [ "org.openrdf.sesame:sesame-model:$rdfVersion",
"org.openrdf.sesame:sesame-queryparser-sparql:$rdfVersion",
"org.openrdf.sesame:sesame-repository-dataset:$rdfVersion",
"org.openrdf.sesame:sesame-repository-http:$rdfVersion",
"org.openrdf.sesame:sesame-rio-api:$rdfVersion",
"org.openrdf.sesame:sesame-rio-n3:$rdfVersion",
"org.openrdf.sesame:sesame-rio-ntriples:$rdfVersion",
"org.openrdf.sesame:sesame-rio-rdfxml:$rdfVersion",
"org.openrdf.sesame:sesame-rio-trig:$rdfVersion",
"org.openrdf.sesame:sesame-rio-trix:$rdfVersion",
"org.openrdf.sesame:sesame-rio-turtle:$rdfVersion",
"org.openrdf.sesame:sesame-sail-api:$rdfVersion",
"org.openrdf.sesame:sesame-sail-memory:$rdfVersion",
"org.openrdf.sesame:sesame-sail-nativerdf:$rdfVersion",
"org.openrdf.sesame:sesame-sail-rdbms:$rdfVersion"
],
sparql: [
"org.openrdf.sesame:sesame-queryresultio-sparqlxml:$rdfVersion",
"org.openrdf.sesame:sesame-queryresultio-sparqljson:$rdfVersion"
],
// SOLR
solr: [ "org.apache.solr:solr-core:$solrVersion",
"org.apache.solr:solr-solrj:$solrVersion"
],
// Jetty
jetty_server: "org.eclipse.jetty:jetty-server:$jettyVersion",
jetty_webapp: "org.eclipse.jetty:jetty-webapp:$jettyVersion",
jetty_servlet: "org.eclipse.jetty:jetty-servlet:$jettyVersion",
jetty_http: "org.eclipse.jetty:jetty-http:$jettyVersion",
jetty_io: "org.eclipse.jetty:jetty-io:$jettyVersion",
jetty_jmx: "org.eclipse.jetty:jetty-jmx:$jettyVersion",
jetty_security: "org.eclipse.jetty:jetty-security:$jettyVersion",
jetty_jsp: "org.eclipse.jetty:jetty-jsp:$jettyVersion",
jetty_util: "org.eclipse.jetty:jetty-util:$jettyVersion",
jetty_continuation: "org.eclipse.jetty:jetty-continuation:$jettyVersion",
jetty_client: "org.eclipse.jetty:jetty-client:$jettyVersion",
jetty_xml: "org.eclipse.jetty:jetty-xml:$jettyVersion",
// Scripting
groovy: "org.codehaus.groovy:groovy-all:$groovyVersion",
javascript: "org.mozilla:rhino:$javascriptVersion",
// Wicket
wicket: [ "org.apache.wicket:wicket-core:$wicketVersion",
"org.apache.wicket:wicket-datetime:$wicketVersion",
"org.apache.wicket:wicket-extensions:$wicketVersion"
],
wicket_devutils: "org.apache.wicket:wicket-devutils:$wicketVersion",
wicket_stateless: "com.jolira:wicket-stateless:$wicketStatelessVersion",
// Library & Extension dependencies
jackson_mapper: "com.fasterxml.jackson.core:jackson-databind:$jacksonVersion",
jodamoney: "org.joda:joda-money:$jodaMoneyVersion",
jodatime: "joda-time:joda-time:$jodaTimeVersion",
ehcache: "net.sf.ehcache:ehcache:$ehcacheVersion",
elasticsearch: "org.elasticsearch:elasticsearch:$elasticsearchVersion",
h2: "com.h2database:h2:$h2Version",
hazelcast: "com.hazelcast:hazelcast:$hazelcastVersion",
jclouds_core: "org.apache.jclouds:jclouds-core:$jcloudsVersion",
jclouds_blobstore: "org.apache.jclouds:jclouds-allblobstore:$jcloudsVersion",
jclouds_filesystem: "org.apache.jclouds.api:filesystem:$jcloudsVersion",
jdbm: "jdbm:jdbm:$jdbmVersion",
jedis: "redis.clients:jedis:$jedisVersion",
jgoodies_looks: "com.jgoodies:jgoodies-looks:$jgoodiesLooksVersion",
leveldb_api: "org.iq80.leveldb:leveldb-api:$leveldbVersion",
leveldb_java: "org.iq80.leveldb:leveldb:$leveldbVersion",
leveldb_jni_all: "org.fusesource.leveldbjni:leveldbjni-all:$leveldbJniVersion",
mongodb: "org.mongodb:mongo-java-driver:$mongodbVersion",
riak: "com.basho.riak:riak-client:$riakVersion",
jta: "javax.transaction:jta:$jtaVersion",
javaSqlGenerator: "org.java-sql-generator:org.java-sql-generator.api:$javasqlgeneratorVersion",
javaSqlGeneratorImpl: "org.java-sql-generator:org.java-sql-generator.implementation:$javasqlgeneratorVersion",
velocity: "org.apache.velocity:velocity:$velocityVersion",
commons_dbcp: "commons-dbcp:commons-dbcp:$commonsDbcpVersion",
commons_lang: "commons-lang:commons-lang:$commonsLangVersion",
servlet_api: "javax.servlet:javax.servlet-api:$servletVersion",
http_client: "org.apache.httpcomponents:httpclient:$httpClientVersion",
woodstox: "org.codehaus.woodstox:woodstox-core-asl:$woodstoxVersion",
restlet_xml: "org.restlet.jee:org.restlet.ext.xml:$restletVersion",
bouncy_castle: "org.bouncycastle:bcprov-jdk15on:$bouncyVersion",
dnsjava: "dnsjava:dnsjava:$dnsJavaVersion",
freemarker: "org.freemarker:freemarker:$freemarkerVersion",
shiro: "org.apache.shiro:shiro-core:$shiroVersion",
shiro_web: "org.apache.shiro:shiro-web:$shiroVersion",
bonecp: "com.jolbox:bonecp:$bonecpVersion",
liquibase: "org.liquibase:liquibase-core:$liquibaseVersion",
sked: "org.codeartisans:sked:$skedVersion",
yammer_metrics: "com.yammer.metrics:metrics-core:$yammerMetricsVersion",
pdfbox: "org.apache.pdfbox:pdfbox:$pdfboxVersion",
prefuse: "de.sciss:prefuse-core:$prefuseVersion",
spymemcached: "net.spy:spymemcached:$spymemcachedVersion",
// Testing
junit: "junit:junit:$junitVersion",
awaitility: "com.jayway.awaitility:awaitility:$awaitilityVersion",
easymock: "org.easymock:easymock:$easyMockVersion",
jmock: "org.jmock:jmock:$jmockVersion",
mockito: "org.mockito:mockito-core:$mockitoVersion",
rest_assured: "com.jayway.restassured:rest-assured:$restAssuredVersion",
testng: "org.testng:testng:$testNgVersion",
xmlunit: "xmlunit:xmlunit:$xmlunitVersion",
// Tests dependencies
derby: "org.apache.derby:derby:$derbyVersion",
derbyclient: "org.apache.derby:derbyclient:$derbyVersion",
derbynet: "org.apache.derby:derbynet:$derbyVersion",
postgres: "org.postgresql:postgresql:$postgresqlVersion",
mysql_connector: "mysql:mysql-connector-java:$mysqlVersion",
sqlite: "org.xerial:sqlite-jdbc:$sqliteVersion",
]
}
// Global transitive dependencies substitution rules
// See https://docs.gradle.org/current/userguide/dependency_management.html#dependency_substitution_rules
// See https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.DependencySubstitutions.html
allprojects {
configurations.all {
resolutionStrategy.dependencySubstitution.all { DependencySubstitution dep ->
if( dep.requested instanceof ModuleComponentSelector ) {
// Always resolve SLF4J to the same version
if( dep.requested.group == 'org.slf4j' ) {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: slf4jVersion
}
// Always resolve ASM to the same version
if( dep.requested.group == 'org.ow2.asm' ) {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: asmVersion
}
// Always resolve OSGi to the same version
if( dep.requested.group == 'org.osgi' ) {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: osgiVersion
}
// Always resolve Jackson to the same version
if( dep.requested.group.startsWith( 'com.fasterxml.jackson' ) && dep.requested.module != 'jackson-parent' ) {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: jacksonVersion
}
// woodstox:wstx-asl is broken (no pom), use org.codehaus.woodstox:wstx-asl instead
if( dep.requested.group == 'woodstox' && dep.requested.module == 'wstx-asl' ) {
dep.useTarget group: 'org.codehaus.woodstox', name: 'wstx-asl', version: dep.requested.version
}
// some bad citizens have SNAPSHOT parents ...
if( dep.requested.module == 'commons-sandbox-parent' && dep.requested.version == '3-SNAPSHOT') {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: '3'
}
// GSON 2.3 POM is invalid, use 2.3.1 instead .. see https://github.com/google/gson/issues/588
if( dep.requested.group == 'com.google.code.gson' && dep.requested.module == 'gson' && dep.requested.version == '2.3' ) {
dep.useTarget group: dep.requested.group, name: dep.requested.module, version: '2.3.1'
}
// Findbugs Annotation is LGPL, use https://github.com/stephenc/findbugs-annotations which is
// Apache 2 licensed instead
if( dep.requested.group == 'net.sourceforge.findbugs' && dep.requested.module == 'annotations' ) {
dep.useTarget group: 'com.github.stephenc.findbugs', name: 'findbugs-annotations', version: '1.3.9-1'
}
}
}
}
}