From 4866955c76f47fe20e02ba452d1e48afbdb6fe98 Mon Sep 17 00:00:00 2001 From: shicong Date: Thu, 10 Jan 2019 08:18:09 -0800 Subject: [PATCH] Unify dependency declarations into one place This change unified declarations of third party dependencies into one dependencies.gradle file by reference to this blog https://medium.com/freelancer-engineering/managing-dependencies-in-multi-project-builds-with-gradle-7626d9c6448d ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=228713862 --- gradle/build.gradle | 2 + gradle/core/build.gradle | 328 ++++++++++++++++++------------------- gradle/dependencies.gradle | 155 ++++++++++++++++++ gradle/proxy/build.gradle | 76 ++++----- gradle/util/build.gradle | 48 +++--- 5 files changed, 381 insertions(+), 228 deletions(-) create mode 100644 gradle/dependencies.gradle diff --git a/gradle/build.gradle b/gradle/build.gradle index 68bc6796e..874108451 100644 --- a/gradle/build.gradle +++ b/gradle/build.gradle @@ -20,6 +20,8 @@ plugins { id 'com.bmuschko.docker-java-application' version '4.0.4' apply false } +apply from: 'dependencies.gradle' + // Provide defaults for all of the project properties. // showAllOutput: boolean. If true, dump all test output during the build. diff --git a/gradle/core/build.gradle b/gradle/core/build.gradle index 0182ad928..f90b4153f 100644 --- a/gradle/core/build.gradle +++ b/gradle/core/build.gradle @@ -72,150 +72,152 @@ configurations { // See https://github.com/nebula-plugins/gradle-lint-plugin/issues/181 for // issue status. dependencies { + def deps = rootProject.dependencyMap + // Custom-built objectify jar at commit ecd5165, included in Nomulus // release. implementation files( "${rootDir}/../third_party/objectify/v4_1/objectify-4.1.3.jar") testImplementation project(':third_party') - compile 'com.beust:jcommander:1.48' - compile 'com.google.api-client:google-api-client:1.22.0' - maybeRuntime 'com.google.api-client:google-api-client-appengine:1.22.0' - maybeRuntime 'com.google.api-client:google-api-client-jackson2:1.20.0' - compile 'com.google.monitoring-client:metrics:1.0.4' - compile 'com.google.monitoring-client:stackdriver:1.0.4' - compile 'com.google.api-client:google-api-client-java6:1.27.0' - maybeRuntime 'com.google.api-client:google-api-client-servlet:1.22.0' - compile 'com.google.apis:google-api-services-admin-directory:directory_v1-rev72-1.22.0' - compile 'com.google.apis:google-api-services-appengine:v1-rev85-1.25.0' - compile 'com.google.apis:google-api-services-bigquery:v2-rev325-1.22.0' - maybeRuntime 'com.google.apis:google-api-services-clouddebugger:v2-rev8-1.22.0' - compile 'com.google.apis:google-api-services-cloudkms:v1-rev12-1.22.0' - maybeRuntime 'com.google.apis:google-api-services-cloudresourcemanager:v1-rev6-1.22.0' - compile 'com.google.apis:google-api-services-dataflow:v1b3-rev196-1.22.0' - compile 'com.google.apis:google-api-services-dns:v2beta1-rev6-1.22.0' - compile 'com.google.apis:google-api-services-drive:v2-rev160-1.19.1' - compile 'com.google.apis:google-api-services-groupssettings:v1-rev60-1.22.0' - compile 'com.google.apis:google-api-services-monitoring:v3-rev11-1.22.0' - compile 'com.google.apis:google-api-services-sheets:v4-rev483-1.22.0' - maybeRuntime 'com.google.apis:google-api-services-storage:v1-rev86-1.22.0' + compile deps['com.beust:jcommander'] + compile deps['com.google.api-client:google-api-client'] + maybeRuntime deps['com.google.api-client:google-api-client-appengine'] + maybeRuntime deps['com.google.api-client:google-api-client-jackson2'] + compile deps['com.google.monitoring-client:metrics'] + compile deps['com.google.monitoring-client:stackdriver'] + compile deps['com.google.api-client:google-api-client-java6'] + maybeRuntime deps['com.google.api-client:google-api-client-servlet'] + compile deps['com.google.apis:google-api-services-admin-directory'] + compile deps['com.google.apis:google-api-services-appengine'] + compile deps['com.google.apis:google-api-services-bigquery'] + maybeRuntime deps['com.google.apis:google-api-services-clouddebugger'] + compile deps['com.google.apis:google-api-services-cloudkms'] + maybeRuntime deps['com.google.apis:google-api-services-cloudresourcemanager'] + compile deps['com.google.apis:google-api-services-dataflow'] + compile deps['com.google.apis:google-api-services-dns'] + compile deps['com.google.apis:google-api-services-drive'] + compile deps['com.google.apis:google-api-services-groupssettings'] + compile deps['com.google.apis:google-api-services-monitoring'] + compile deps['com.google.apis:google-api-services-sheets'] + maybeRuntime deps['com.google.apis:google-api-services-storage'] // TODO(b/71631624): change appengine:appengine-api-1.0-sdk to // testCompileOnly after BillingEmailUtilsTest.java is fixed. - compile 'com.google.appengine:appengine-api-1.0-sdk:1.9.48' - maybeRuntime 'com.google.appengine:appengine-api-labs:1.9.48' - maybeRuntime 'com.google.appengine:appengine-api-stubs:1.9.48' - testCompile 'com.google.appengine:appengine-api-stubs:1.9.48' - compile 'com.google.appengine.tools:appengine-gcs-client:0.6' - compile 'com.google.appengine.tools:appengine-mapreduce:0.8.5' - compile 'com.google.appengine.tools:appengine-pipeline:0.2.13' - compile 'com.google.appengine:appengine-remote-api:1.9.48' - maybeRuntime 'com.google.appengine:appengine-tools-sdk:1.9.48' - compile 'com.google.auth:google-auth-library-credentials:0.7.1' - compile 'com.google.auth:google-auth-library-oauth2-http:0.7.1' - maybeRuntime 'com.google.auto:auto-common:0.8' - maybeRuntime 'com.google.auto.factory:auto-factory:1.0-beta3' - compile 'com.google.code.gson:gson:2.8.5' - compile 'com.google.auto.value:auto-value-annotations:1.6.2' - maybeRuntime 'com.google.cloud.bigdataoss:gcsio:1.4.5' - maybeRuntime 'com.google.cloud.bigdataoss:util:1.4.5' - compile 'com.google.code.findbugs:jsr305:3.0.2' - compile 'com.google.dagger:dagger:2.15' - maybeRuntime 'com.google.dagger:dagger-producers:2.15' - compile 'com.google.errorprone:error_prone_annotations:2.3.1' - maybeRuntime 'com.google.errorprone:javac-shaded:9-dev-r4023-3' - compile 'com.google.flogger:flogger:0.1' - runtime 'com.google.flogger:flogger-system-backend:0.1' - maybeRuntime 'com.google.gdata:core:1.47.1' - maybeRuntime 'com.google.googlejavaformat:google-java-format:1.4' - compile 'com.google.guava:guava:25.1-jre' + compile deps['com.google.appengine:appengine-api-1.0-sdk'] + maybeRuntime deps['com.google.appengine:appengine-api-labs'] + maybeRuntime deps['com.google.appengine:appengine-api-stubs'] + testCompile deps['com.google.appengine:appengine-api-stubs'] + compile deps['com.google.appengine.tools:appengine-gcs-client'] + compile deps['com.google.appengine.tools:appengine-mapreduce'] + compile deps['com.google.appengine.tools:appengine-pipeline'] + compile deps['com.google.appengine:appengine-remote-api'] + maybeRuntime deps['com.google.appengine:appengine-tools-sdk'] + compile deps['com.google.auth:google-auth-library-credentials'] + compile deps['com.google.auth:google-auth-library-oauth2-http'] + maybeRuntime deps['com.google.auto:auto-common'] + maybeRuntime deps['com.google.auto.factory:auto-factory'] + compile deps['com.google.code.gson:gson'] + compile deps['com.google.auto.value:auto-value-annotations'] + maybeRuntime deps['com.google.cloud.bigdataoss:gcsio'] + maybeRuntime deps['com.google.cloud.bigdataoss:util'] + compile deps['com.google.code.findbugs:jsr305'] + compile deps['com.google.dagger:dagger'] + maybeRuntime deps['com.google.dagger:dagger-producers'] + compile deps['com.google.errorprone:error_prone_annotations'] + maybeRuntime deps['com.google.errorprone:javac-shaded'] + compile deps['com.google.flogger:flogger'] + runtime deps['com.google.flogger:flogger-system-backend'] + maybeRuntime deps['com.google.gdata:core'] + maybeRuntime deps['com.google.googlejavaformat:google-java-format'] + compile deps['com.google.guava:guava'] gradleLint.ignore('unused-dependency') { - compile 'com.google.gwt:gwt-user:2.8.2' + compile deps['com.google.gwt:gwt-user'] } - compile 'com.google.http-client:google-http-client:1.25.0' - compile 'com.google.http-client:google-http-client-appengine:1.22.0' - compile 'com.google.http-client:google-http-client-jackson2:1.25.0' - compile 'com.google.oauth-client:google-oauth-client:1.25.0' - maybeRuntime 'com.google.oauth-client:google-oauth-client-appengine:1.22.0' - compile 'com.google.oauth-client:google-oauth-client-java6:1.27.0' - compile 'com.google.oauth-client:google-oauth-client-jetty:1.22.0' - maybeRuntime 'com.google.oauth-client:google-oauth-client-servlet:1.22.0' - maybeRuntime 'com.google.protobuf:protobuf-java:2.6.0' - compile 'com.google.re2j:re2j:1.1' - compile 'com.google.template:soy:2018-03-14' - maybeRuntime 'com.googlecode.charts4j:charts4j:1.3' - compile 'com.googlecode.json-simple:json-simple:1.1.1' - compile 'com.jcraft:jsch:0.1.53' - maybeRuntime 'com.jcraft:jzlib:1.1.3' - maybeRuntime 'com.squareup:javapoet:1.8.0' - maybeRuntime 'com.squareup:javawriter:2.5.1' - maybeRuntime 'com.sun.activation:javax.activation:1.2.0' - maybeRuntime 'com.thoughtworks.paranamer:paranamer:2.7' - maybeRuntime 'commons-codec:commons-codec:1.10' - compile group: 'commons-io', name: 'commons-io', version: '2.6' - maybeRuntime 'commons-logging:commons-logging:1.2' - compile 'dnsjava:dnsjava:2.1.7' - maybeRuntime 'io.netty:netty-buffer:4.1.28.Final' - maybeRuntime 'io.netty:netty-codec:4.1.28.Final' - maybeRuntime 'io.netty:netty-codec-http:4.1.28.Final' - maybeRuntime 'io.netty:netty-common:4.1.28.Final' - maybeRuntime 'io.netty:netty-handler:4.1.28.Final' - maybeRuntime 'io.netty:netty-resolver:4.1.28.Final' - maybeRuntime 'io.netty:netty-tcnative:2.0.12.Final' - maybeRuntime 'io.netty:netty-tcnative-boringssl-static:2.0.12.Final' - maybeRuntime 'io.netty:netty-transport:4.1.28.Final' - maybeRuntime 'it.unimi.dsi:fastutil:6.5.16' - maybeRuntime 'javax.annotation:jsr250-api:1.0' - runtime 'org.glassfish.jaxb:jaxb-runtime:2.3.0' - testCompile 'javax.annotation:jsr250-api:1.0' - compile 'javax.inject:javax.inject:1' - compile 'javax.mail:mail:1.4' - compile 'javax.servlet:servlet-api:2.5' - compile 'javax.xml.bind:jaxb-api:2.3.0' - maybeRuntime 'javax.xml.soap:javax.xml.soap-api:1.4.0' - compile 'jline:jline:1.0' - compile 'joda-time:joda-time:2.3' - compile 'org.apache.avro:avro:1.8.2' - maybeRuntime 'org.apache.beam:beam-runners-direct-java:2.2.0' - testCompile 'org.apache.beam:beam-runners-direct-java:2.2.0' - compile 'org.apache.beam:beam-runners-google-cloud-dataflow-java:2.1.0' - maybeRuntime 'org.apache.beam:beam-sdks-common-runner-api:2.1.0' - compile 'org.apache.beam:beam-sdks-java-core:2.2.0' - compile 'org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core:2.1.0' - compile 'org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.2.0' - maybeRuntime 'org.apache.commons:commons-compress:1.8.1' - maybeRuntime 'org.apache.ftpserver:ftplet-api:1.0.6' - testCompile 'org.apache.ftpserver:ftplet-api:1.0.6' - maybeRuntime 'org.apache.ftpserver:ftpserver-core:1.0.6' - testCompile 'org.apache.ftpserver:ftpserver-core:1.0.6' - compile 'org.apache.httpcomponents:httpclient:4.5.2' - compile 'org.apache.httpcomponents:httpcore:4.4.4' - maybeRuntime 'org.apache.mina:mina-core:2.0.4' - maybeRuntime 'org.apache.sshd:sshd-core:2.0.0' - testCompile 'org.apache.sshd:sshd-core:2.0.0' - maybeRuntime 'org.apache.sshd:sshd-scp:2.0.0' - testCompile 'org.apache.sshd:sshd-scp:2.0.0' - maybeRuntime 'org.apache.sshd:sshd-sftp:2.0.0' - testCompile 'org.apache.sshd:sshd-sftp:2.0.0' - compile 'org.apache.tomcat:servlet-api:6.0.45' - maybeRuntime 'org.apache.tomcat:tomcat-annotations-api:8.0.5' - testCompile 'org.apache.tomcat:tomcat-annotations-api:8.0.5' - compile 'org.bouncycastle:bcpg-jdk15on:1.52' - testCompile 'org.bouncycastle:bcpkix-jdk15on:1.52' - compile 'org.bouncycastle:bcprov-jdk15on:1.52' - maybeRuntime 'org.codehaus.jackson:jackson-core-asl:1.9.13' - maybeRuntime 'org.codehaus.jackson:jackson-mapper-asl:1.9.13' - compile 'org.joda:joda-money:0.10.0' - compile 'org.json:json:20160810' - maybeRuntime 'org.khronos:opengl-api:gl1.1-android-2.1_r1' - maybeRuntime 'org.mortbay.jetty:jetty:6.1.26' - testCompile 'org.mortbay.jetty:jetty:6.1.26' - compile 'org.mortbay.jetty:servlet-api:2.5-20081211' - maybeRuntime 'org.mortbay.jetty:jetty-util:6.1.26' - maybeRuntime 'org.slf4j:slf4j-api:1.7.16' - maybeRuntime 'org.tukaani:xz:1.5' - maybeRuntime 'org.xerial.snappy:snappy-java:1.1.4-M3' - compile 'xerces:xmlParserAPIs:2.6.2' - compile 'xpp3:xpp3:1.1.4c' + compile deps['com.google.http-client:google-http-client'] + compile deps['com.google.http-client:google-http-client-appengine'] + compile deps['com.google.http-client:google-http-client-jackson2'] + compile deps['com.google.oauth-client:google-oauth-client'] + maybeRuntime deps['com.google.oauth-client:google-oauth-client-appengine'] + compile deps['com.google.oauth-client:google-oauth-client-java6'] + compile deps['com.google.oauth-client:google-oauth-client-jetty'] + maybeRuntime deps['com.google.oauth-client:google-oauth-client-servlet'] + maybeRuntime deps['com.google.protobuf:protobuf-java'] + compile deps['com.google.re2j:re2j'] + compile deps['com.google.template:soy'] + maybeRuntime deps['com.googlecode.charts4j:charts4j'] + compile deps['com.googlecode.json-simple:json-simple'] + compile deps['com.jcraft:jsch'] + maybeRuntime deps['com.jcraft:jzlib'] + maybeRuntime deps['com.squareup:javapoet'] + maybeRuntime deps['com.squareup:javawriter'] + maybeRuntime deps['com.sun.activation:javax.activation'] + maybeRuntime deps['com.thoughtworks.paranamer:paranamer'] + maybeRuntime deps['commons-codec:commons-codec'] + compile deps['commons-io:commons-io'] + maybeRuntime deps['commons-logging:commons-logging'] + compile deps['dnsjava:dnsjava'] + maybeRuntime deps['io.netty:netty-buffer'] + maybeRuntime deps['io.netty:netty-codec'] + maybeRuntime deps['io.netty:netty-codec-http'] + maybeRuntime deps['io.netty:netty-common'] + maybeRuntime deps['io.netty:netty-handler'] + maybeRuntime deps['io.netty:netty-resolver'] + maybeRuntime deps['io.netty:netty-tcnative'] + maybeRuntime deps['io.netty:netty-tcnative-boringssl-static'] + maybeRuntime deps['io.netty:netty-transport'] + maybeRuntime deps['it.unimi.dsi:fastutil'] + maybeRuntime deps['javax.annotation:jsr250-api'] + runtime deps['org.glassfish.jaxb:jaxb-runtime'] + testCompile deps['javax.annotation:jsr250-api'] + compile deps['javax.inject:javax.inject'] + compile deps['javax.mail:mail'] + compile deps['javax.servlet:servlet-api'] + compile deps['javax.xml.bind:jaxb-api'] + maybeRuntime deps['javax.xml.soap:javax.xml.soap-api'] + compile deps['jline:jline'] + compile deps['joda-time:joda-time'] + compile deps['org.apache.avro:avro'] + maybeRuntime deps['org.apache.beam:beam-runners-direct-java'] + testCompile deps['org.apache.beam:beam-runners-direct-java'] + compile deps['org.apache.beam:beam-runners-google-cloud-dataflow-java'] + maybeRuntime deps['org.apache.beam:beam-sdks-common-runner-api'] + compile deps['org.apache.beam:beam-sdks-java-core'] + compile deps['org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core'] + compile deps['org.apache.beam:beam-sdks-java-io-google-cloud-platform'] + maybeRuntime deps['org.apache.commons:commons-compress'] + maybeRuntime deps['org.apache.ftpserver:ftplet-api'] + testCompile deps['org.apache.ftpserver:ftplet-api'] + maybeRuntime deps['org.apache.ftpserver:ftpserver-core'] + testCompile deps['org.apache.ftpserver:ftpserver-core'] + compile deps['org.apache.httpcomponents:httpclient'] + compile deps['org.apache.httpcomponents:httpcore'] + maybeRuntime deps['org.apache.mina:mina-core'] + maybeRuntime deps['org.apache.sshd:sshd-core'] + testCompile deps['org.apache.sshd:sshd-core'] + maybeRuntime deps['org.apache.sshd:sshd-scp'] + testCompile deps['org.apache.sshd:sshd-scp'] + maybeRuntime deps['org.apache.sshd:sshd-sftp'] + testCompile deps['org.apache.sshd:sshd-sftp'] + compile deps['org.apache.tomcat:servlet-api'] + maybeRuntime deps['org.apache.tomcat:tomcat-annotations-api'] + testCompile deps['org.apache.tomcat:tomcat-annotations-api'] + compile deps['org.bouncycastle:bcpg-jdk15on'] + testCompile deps['org.bouncycastle:bcpkix-jdk15on'] + compile deps['org.bouncycastle:bcprov-jdk15on'] + maybeRuntime deps['org.codehaus.jackson:jackson-core-asl'] + maybeRuntime deps['org.codehaus.jackson:jackson-mapper-asl'] + compile deps['org.joda:joda-money'] + compile deps['org.json:json'] + maybeRuntime deps['org.khronos:opengl-api'] + maybeRuntime deps['org.mortbay.jetty:jetty'] + testCompile deps['org.mortbay.jetty:jetty'] + compile deps['org.mortbay.jetty:servlet-api'] + maybeRuntime deps['org.mortbay.jetty:jetty-util'] + maybeRuntime deps['org.slf4j:slf4j-api'] + maybeRuntime deps['org.tukaani:xz'] + maybeRuntime deps['org.xerial.snappy:snappy-java'] + compile deps['xerces:xmlParserAPIs'] + compile deps['xpp3:xpp3'] // Known issue: nebula-lint misses inherited dependency. compile project(':third_party') @@ -224,45 +226,45 @@ dependencies { // Include auto-value in compile until nebula-lint understands // annotationProcessor gradleLint.ignore('unused-dependency') { - compile 'com.google.auto.value:auto-value:1.6.2' + compile deps['com.google.auto.value:auto-value'] } - annotationProcessor 'com.google.auto.value:auto-value:1.6.2' - testAnnotationProcessor 'com.google.auto.value:auto-value:1.6.2' - annotationProcessor 'com.google.dagger:dagger-compiler:2.15' - testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.15' + annotationProcessor deps['com.google.auto.value:auto-value'] + testAnnotationProcessor deps['com.google.auto.value:auto-value'] + annotationProcessor deps['com.google.dagger:dagger-compiler'] + testAnnotationProcessor deps['com.google.dagger:dagger-compiler'] - testCompile 'com.google.appengine:appengine-testing:1.9.58' - testCompile 'com.google.guava:guava-testlib:25.0-jre' - testCompile 'com.google.monitoring-client:contrib:1.0.4' - testCompile 'com.google.truth:truth:0.42' - testCompile 'com.google.truth.extensions:truth-java8-extension:0.39' - testCompile 'org.hamcrest:hamcrest-all:1.3' - testCompile 'org.hamcrest:hamcrest-core:1.3' - testCompile 'org.hamcrest:hamcrest-library:1.3' - testCompile 'junit:junit:4.12' - testCompile 'org.mockito:mockito-all:1.9.5' + testCompile deps['com.google.appengine:appengine-testing'] + testCompile deps['com.google.guava:guava-testlib'] + testCompile deps['com.google.monitoring-client:contrib'] + testCompile deps['com.google.truth:truth'] + testCompile deps['com.google.truth.extensions:truth-java8-extension'] + testCompile deps['org.hamcrest:hamcrest-all'] + testCompile deps['org.hamcrest:hamcrest-core'] + testCompile deps['org.hamcrest:hamcrest-library'] + testCompile deps['junit:junit'] + testCompile deps['org.mockito:mockito-all'] // Indirect dependency found by undeclared-dependency check. Such // dependencies should go after all other compile and testCompile // dependencies to avoid overriding them accidentally. - compile 'javax.servlet:javax.servlet-api:3.1.0' // google-api-client-appeng - compile 'com.google.oauth-client:google-oauth-client-java6:1.20.0' + compile deps['javax.servlet:javax.servlet-api'] // google-api-client-appeng + compile deps['com.google.oauth-client:google-oauth-client-java6'] // Dependencies needed for jaxb compilation. // Use jaxb 2.2.11 because 2.3 is known to break the Ant task we use. // TODO: upgrade jaxb versions to 2.4.0, already in beta by Sept 2018 - jaxb 'javax.xml.bind:jaxb-api:2.2.11' - jaxb 'com.sun.activation:javax.activation:1.2.0' - jaxb 'com.sun.xml.bind:jaxb-xjc:2.2.11' - jaxb 'com.sun.xml.bind:jaxb-impl:2.2.11' - jaxb 'com.sun.xml.bind:jaxb-osgi:2.2.11' + jaxb deps['javax.xml.bind:jaxb-api'] + jaxb deps['com.sun.activation:javax.activation'] + jaxb deps['com.sun.xml.bind:jaxb-xjc'] + jaxb deps['com.sun.xml.bind:jaxb-impl'] + jaxb deps['com.sun.xml.bind:jaxb-osgi'] // Dependency needed for soy to java compilation. - soy 'com.google.template:soy:2018-03-14' + soy deps['com.google.template:soy'] // Dependencies needed for compiling stylesheets to javascript - css 'com.google.closure-stylesheets:closure-stylesheets:1.5.0' - css 'args4j:args4j:2.0.26' + css deps['com.google.closure-stylesheets:closure-stylesheets'] + css deps['args4j:args4j'] // Tool dependencies. used for doc generation. compile files("${System.properties['java.home']}/../lib/tools.jar") @@ -356,14 +358,6 @@ task soyToJava { }.filter { it.name.endsWith(".soy") }) - - soyToJava('google.registry.ui.soy.otesetup', - "${generatedDir}/google/registry/ui/soy/otesetup", - files { - file("${javaDir}/google/registry/ui/soy/otesetup").listFiles() - }.filter { - it.name.endsWith(".soy") - }) } } diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle new file mode 100644 index 000000000..7ba6767b6 --- /dev/null +++ b/gradle/dependencies.gradle @@ -0,0 +1,155 @@ +ext { + dependencyList = [ + 'args4j:args4j:2.0.26', + 'com.beust:jcommander:1.48', + 'com.google.api-client:google-api-client:1.27.0', + 'com.google.api-client:google-api-client-appengine:1.22.0', + 'com.google.api-client:google-api-client-jackson2:1.20.0', + 'com.google.api-client:google-api-client-java6:1.27.0', + 'com.google.api-client:google-api-client-servlet:1.22.0', + 'com.google.apis:google-api-services-admin-directory:directory_v1-rev72-1.22.0', + 'com.google.apis:google-api-services-appengine:v1-rev85-1.25.0', + 'com.google.apis:google-api-services-bigquery:v2-rev325-1.22.0', + 'com.google.apis:google-api-services-clouddebugger:v2-rev8-1.22.0', + 'com.google.apis:google-api-services-cloudkms:v1-rev12-1.22.0', + 'com.google.apis:google-api-services-cloudresourcemanager:v1-rev6-1.22.0', + 'com.google.apis:google-api-services-dataflow:v1b3-rev196-1.22.0', + 'com.google.apis:google-api-services-dns:v2beta1-rev6-1.22.0', + 'com.google.apis:google-api-services-drive:v2-rev160-1.19.1', + 'com.google.apis:google-api-services-groupssettings:v1-rev60-1.22.0', + 'com.google.apis:google-api-services-monitoring:v3-rev11-1.22.0', + 'com.google.apis:google-api-services-sheets:v4-rev483-1.22.0', + 'com.google.apis:google-api-services-storage:v1-rev86-1.22.0', + 'com.google.appengine:appengine-api-1.0-sdk:1.9.48', + 'com.google.appengine:appengine-api-labs:1.9.48', + 'com.google.appengine:appengine-api-stubs:1.9.48', + 'com.google.appengine:appengine-remote-api:1.9.48', + 'com.google.appengine:appengine-testing:1.9.58', + 'com.google.appengine:appengine-tools-sdk:1.9.48', + 'com.google.appengine.tools:appengine-gcs-client:0.6', + 'com.google.appengine.tools:appengine-mapreduce:0.8.5', + 'com.google.appengine.tools:appengine-pipeline:0.2.13', + 'com.google.auth:google-auth-library-credentials:0.7.1', + 'com.google.auth:google-auth-library-oauth2-http:0.7.1', + 'com.google.auto:auto-common:0.8', + 'com.google.auto.factory:auto-factory:1.0-beta3', + 'com.google.auto.value:auto-value:1.6.2', + 'com.google.auto.value:auto-value-annotations:1.6.2', + 'com.google.closure-stylesheets:closure-stylesheets:1.5.0', + 'com.google.cloud.bigdataoss:gcsio:1.4.5', + 'com.google.cloud.bigdataoss:util:1.4.5', + 'com.googlecode.charts4j:charts4j:1.3', + 'com.google.code.findbugs:jsr305:3.0.2', + 'com.google.code.gson:gson:2.8.5', + 'com.googlecode.json-simple:json-simple:1.1.1', + 'com.google.dagger:dagger:2.15', + 'com.google.dagger:dagger-compiler:2.15', + 'com.google.dagger:dagger-producers:2.15', + 'com.google.errorprone:error_prone_annotations:2.3.1', + 'com.google.errorprone:javac-shaded:9-dev-r4023-3', + 'com.google.flogger:flogger:0.1', + 'com.google.flogger:flogger-system-backend:0.1', + 'com.google.gdata:core:1.47.1', + 'com.google.googlejavaformat:google-java-format:1.4', + 'com.google.guava:guava:27.0-jre', + 'com.google.guava:guava-testlib:25.0-jre', + 'com.google.gwt:gwt-user:2.8.2', + 'com.google.http-client:google-http-client:1.27.0', + 'com.google.http-client:google-http-client-appengine:1.22.0', + 'com.google.http-client:google-http-client-jackson2:1.25.0', + 'com.google.monitoring-client:contrib:1.0.4', + 'com.google.monitoring-client:metrics:1.0.4', + 'com.google.monitoring-client:stackdriver:1.0.4', + 'com.google.oauth-client:google-oauth-client:1.25.0', + 'com.google.oauth-client:google-oauth-client-appengine:1.22.0', + 'com.google.oauth-client:google-oauth-client-java6:1.27.0', + 'com.google.oauth-client:google-oauth-client-jetty:1.22.0', + 'com.google.oauth-client:google-oauth-client-servlet:1.22.0', + 'com.google.protobuf:protobuf-java:2.6.0', + 'com.google.re2j:re2j:1.1', + 'com.google.template:soy:2018-03-14', + 'com.google.truth.extensions:truth-java8-extension:0.39', + 'com.google.truth:truth:0.42', + 'com.ibm.icu:icu4j:57.1', + 'com.jcraft:jsch:0.1.53', + 'com.jcraft:jzlib:1.1.3', + 'commons-codec:commons-codec:1.10', + 'commons-io:commons-io:2.6', + 'commons-logging:commons-logging:1.2', + 'com.squareup:javapoet:1.8.0', + 'com.squareup:javawriter:2.5.1', + 'com.sun.activation:javax.activation:1.2.0', + 'com.sun.xml.bind:jaxb-impl:2.2.11', + 'com.sun.xml.bind:jaxb-osgi:2.2.11', + 'com.sun.xml.bind:jaxb-xjc:2.2.11', + 'com.thoughtworks.paranamer:paranamer:2.7', + 'dnsjava:dnsjava:2.1.7', + 'io.netty:netty-buffer:4.1.31.Final', + 'io.netty:netty-codec:4.1.31.Final', + 'io.netty:netty-codec-http:4.1.31.Final', + 'io.netty:netty-common:4.1.31.Final', + 'io.netty:netty-handler:4.1.31.Final', + 'io.netty:netty-resolver:4.1.28.Final', + 'io.netty:netty-tcnative:2.0.12.Final', + 'io.netty:netty-tcnative-boringssl-static:2.0.20.Final', + 'io.netty:netty-transport:4.1.31.Final', + 'it.unimi.dsi:fastutil:6.5.16', + 'javax.annotation:jsr250-api:1.0', + 'javax.inject:javax.inject:1', + 'javax.mail:mail:1.4', + 'javax.servlet:javax.servlet-api:3.1.0', + 'javax.servlet:servlet-api:2.5', + 'javax.xml.bind:jaxb-api:2.3.0', + 'javax.xml.soap:javax.xml.soap-api:1.4.0', + 'jline:jline:1.0', + 'joda-time:joda-time:2.9.2', + 'junit:junit:4.12', + 'nomulus:util:1.0', + 'org.apache.avro:avro:1.8.2', + 'org.apache.beam:beam-runners-direct-java:2.2.0', + 'org.apache.beam:beam-runners-google-cloud-dataflow-java:2.1.0', + 'org.apache.beam:beam-sdks-common-runner-api:2.1.0', + 'org.apache.beam:beam-sdks-java-core:2.2.0', + 'org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core:2.1.0', + 'org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.2.0', + 'org.apache.commons:commons-compress:1.8.1', + 'org.apache.ftpserver:ftplet-api:1.0.6', + 'org.apache.ftpserver:ftpserver-core:1.0.6', + 'org.apache.httpcomponents:httpclient:4.5.2', + 'org.apache.httpcomponents:httpcore:4.4.4', + 'org.apache.mina:mina-core:2.0.4', + 'org.apache.sshd:sshd-core:2.0.0', + 'org.apache.sshd:sshd-scp:2.0.0', + 'org.apache.sshd:sshd-sftp:2.0.0', + 'org.apache.tomcat:servlet-api:6.0.45', + 'org.apache.tomcat:tomcat-annotations-api:8.0.5', + 'org.bouncycastle:bcpg-jdk15on:1.52', + 'org.bouncycastle:bcpkix-jdk15on:1.52', + 'org.bouncycastle:bcprov-jdk15on:1.52', + 'org.codehaus.jackson:jackson-core-asl:1.9.13', + 'org.codehaus.jackson:jackson-mapper-asl:1.9.13', + 'org.glassfish.jaxb:jaxb-runtime:2.3.0', + 'org.hamcrest:hamcrest-all:1.3', + 'org.hamcrest:hamcrest-core:1.3', + 'org.hamcrest:hamcrest-library:1.3', + 'org.joda:joda-money:0.10.0', + 'org.json:json:20160810', + 'org.khronos:opengl-api:gl1.1-android-2.1_r1', + 'org.mockito:mockito-all:1.9.5', + 'org.mortbay.jetty:jetty:6.1.26', + 'org.mortbay.jetty:jetty-util:6.1.26', + 'org.mortbay.jetty:servlet-api:2.5-20081211', + 'org.slf4j:slf4j-api:1.7.16', + 'org.tukaani:xz:1.5', + 'org.xerial.snappy:snappy-java:1.1.4-M3', + 'org.yaml:snakeyaml:1.17', + 'xerces:xmlParserAPIs:2.6.2', + 'xpp3:xpp3:1.1.4c' + ] + + dependencyMap = dependencyList.collectEntries { + def fields = it.split(':') + def key = fields[0] + ':' + fields[1] + [key, it] + } +} diff --git a/gradle/proxy/build.gradle b/gradle/proxy/build.gradle index 2dc363e33..9693755a7 100644 --- a/gradle/proxy/build.gradle +++ b/gradle/proxy/build.gradle @@ -44,52 +44,52 @@ task deployJar(type: Jar) { } dependencies { - compile 'com.beust:jcommander:1.48' - compile 'com.google.api-client:google-api-client:1.27.0' - compile 'com.google.api-client:google-api-client:1.27.0' - compile 'com.google.apis:google-api-services-cloudkms:v1-rev12-1.22.0' - compile 'com.google.apis:google-api-services-monitoring:v3-rev11-1.22.0' - compile 'com.google.apis:google-api-services-storage:v1-rev86-1.22.0' - compile 'com.google.auto.value:auto-value-annotations:1.6.2' - compile 'com.google.code.findbugs:jsr305:3.0.2' - compile 'com.google.code.gson:gson:2.8.5' - compile 'com.google.dagger:dagger:2.15' - compile 'com.google.flogger:flogger:0.1' - compile 'com.google.guava:guava:27.0-jre' - compile 'com.google.http-client:google-http-client:1.27.0' - compile 'com.google.monitoring-client:metrics:1.0.4' - compile 'com.google.monitoring-client:stackdriver:1.0.4' - compile 'io.netty:netty-buffer:4.1.31.Final' - compile 'io.netty:netty-codec-http:4.1.31.Final' - compile 'io.netty:netty-codec:4.1.31.Final' - compile 'io.netty:netty-common:4.1.31.Final' - compile 'io.netty:netty-handler:4.1.31.Final' - compile 'io.netty:netty-transport:4.1.31.Final' - compile 'javax.inject:javax.inject:1' - compile 'joda-time:joda-time:2.3' - compile 'org.bouncycastle:bcpkix-jdk15on:1.52' - compile 'org.bouncycastle:bcprov-jdk15on:1.52' + def deps = rootProject.dependencyMap + + compile deps['com.beust:jcommander'] + compile deps['com.google.api-client:google-api-client'] + compile deps['com.google.apis:google-api-services-cloudkms'] + compile deps['com.google.apis:google-api-services-monitoring'] + compile deps['com.google.apis:google-api-services-storage'] + compile deps['com.google.auto.value:auto-value-annotations'] + compile deps['com.google.code.findbugs:jsr305'] + compile deps['com.google.code.gson:gson'] + compile deps['com.google.dagger:dagger'] + compile deps['com.google.flogger:flogger'] + compile deps['com.google.guava:guava'] + compile deps['com.google.http-client:google-http-client'] + compile deps['com.google.monitoring-client:metrics'] + compile deps['com.google.monitoring-client:stackdriver'] + compile deps['io.netty:netty-buffer'] + compile deps['io.netty:netty-codec-http'] + compile deps['io.netty:netty-codec'] + compile deps['io.netty:netty-common'] + compile deps['io.netty:netty-handler'] + compile deps['io.netty:netty-transport'] + compile deps['javax.inject:javax.inject'] + compile deps['joda-time:joda-time'] + compile deps['org.bouncycastle:bcpkix-jdk15on'] + compile deps['org.bouncycastle:bcprov-jdk15on'] compile project(':util') - runtime 'com.google.flogger:flogger-system-backend:0.1' - runtime 'com.google.auto.value:auto-value:1.6.2' - runtime group: 'io.netty', name: 'netty-tcnative-boringssl-static', - version: '2.0.20.Final', classifier: osdetector.classifier + runtime deps['com.google.flogger:flogger-system-backend'] + runtime deps['com.google.auto.value:auto-value'] + runtime deps['io.netty:netty-tcnative-boringssl-static'] + ":${osdetector.classifier}" - testCompile 'com.google.monitoring-client:contrib:1.0.4' - testCompile 'com.google.truth:truth:0.42' - testCompile 'org.yaml:snakeyaml:1.17' - testCompile 'junit:junit:4.12' - testCompile 'org.mockito:mockito-all:1.9.5' + testCompile deps['com.google.monitoring-client:contrib'] + testCompile deps['com.google.truth:truth'] + testCompile deps['org.yaml:snakeyaml'] + testCompile deps['junit:junit'] + testCompile deps['org.mockito:mockito-all'] testCompile project(':third_party') testCompile project(path: ':core', configuration: 'testRuntime') // Include auto-value in compile until nebula-lint understands // annotationProcessor - annotationProcessor 'com.google.auto.value:auto-value:1.6.2' - testAnnotationProcessor 'com.google.auto.value:auto-value:1.6.2' - annotationProcessor 'com.google.dagger:dagger-compiler:2.15' - testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.15' + annotationProcessor deps['com.google.auto.value:auto-value'] + testAnnotationProcessor deps['com.google.auto.value:auto-value'] + annotationProcessor deps['com.google.dagger:dagger-compiler'] + testAnnotationProcessor deps['com.google.dagger:dagger-compiler'] } docker { diff --git a/gradle/util/build.gradle b/gradle/util/build.gradle index 04dd7686e..73c468477 100644 --- a/gradle/util/build.gradle +++ b/gradle/util/build.gradle @@ -1,28 +1,30 @@ dependencies { - compile 'com.google.appengine:appengine-api-1.0-sdk:1.9.48' - compile 'com.google.appengine:appengine-testing:1.9.58' - compile 'com.google.code.findbugs:jsr305:3.0.2' - compile 'com.google.dagger:dagger:2.15' - compile 'com.google.flogger:flogger:0.1' - compile 'com.google.guava:guava:25.1-jre' - compile 'com.google.re2j:re2j:1.1' - compile 'com.ibm.icu:icu4j:57.1' - compile 'javax.inject:javax.inject:1' - compile 'javax.mail:mail:1.4' - compile 'javax.xml.bind:jaxb-api:2.3.0' - compile 'joda-time:joda-time:2.9.2' - compile 'nomulus:util:1.0' - compile 'org.yaml:snakeyaml:1.17' - testCompile 'com.google.appengine:appengine-api-stubs:1.9.48' - testCompile 'com.google.guava:guava-testlib:25.0-jre' - testCompile 'com.google.truth:truth:0.42' - testCompile 'junit:junit:4.12' - testCompile 'org.hamcrest:hamcrest-all:1.3' - testCompile 'org.hamcrest:hamcrest-core:1.3' - testCompile 'org.mockito:mockito-all:1.9.5' + def deps = rootProject.dependencyMap + + compile deps['com.google.appengine:appengine-api-1.0-sdk'] + compile deps['com.google.appengine:appengine-testing'] + compile deps['com.google.code.findbugs:jsr305'] + compile deps['com.google.dagger:dagger'] + compile deps['com.google.flogger:flogger'] + compile deps['com.google.guava:guava'] + compile deps['com.google.re2j:re2j'] + compile deps['com.ibm.icu:icu4j'] + compile deps['javax.inject:javax.inject'] + compile deps['javax.mail:mail'] + compile deps['javax.xml.bind:jaxb-api'] + compile deps['joda-time:joda-time'] + compile deps['nomulus:util'] + compile deps['org.yaml:snakeyaml'] + testCompile deps['com.google.appengine:appengine-api-stubs'] + testCompile deps['com.google.guava:guava-testlib'] + testCompile deps['com.google.truth:truth'] + testCompile deps['junit:junit'] + testCompile deps['org.hamcrest:hamcrest-all'] + testCompile deps['org.hamcrest:hamcrest-core'] + testCompile deps['org.mockito:mockito-all'] testCompile files("${rootDir}/../third_party/objectify/v4_1/objectify-4.1.3.jar") testCompile project(':third_party') testCompile project(path: ':core', configuration: 'testRuntime') - annotationProcessor 'com.google.dagger:dagger-compiler:2.15' - testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.15' + annotationProcessor deps['com.google.dagger:dagger-compiler'] + testAnnotationProcessor deps['com.google.dagger:dagger-compiler'] }