summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGautam Korlam <gkorlam@uber.com>2017-01-29 18:07:40 -0800
committerGautam Korlam <gkorlam@uber.com>2017-01-29 18:13:45 -0800
commit28d667d1aa5a60cf4f3c535915be6fc316649468 (patch)
tree88f964540fefd4d9247d291b51d078613e018a0c
parentb609b360b90070f1713c0222496541a1ab1453c6 (diff)
downloadandroid-studio-gradle-test-28d667d1aa5a60cf4f3c535915be6fc316649468.tar.gz
Do not resolve during configuration time
-rw-r--r--build.gradle35
1 files changed, 35 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle
index a18b395..2cfa80a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -105,6 +105,8 @@ def addCommonConfigurationForAndroidModules(Project project) {
minSdkVersion config.build.minSdkVersion
targetSdkVersion config.build.targetSdkVersion
vectorDrawables.useSupportLibrary = true
+ versionCode 1
+ versionName "1.0.0"
}
compileOptions {
@@ -122,6 +124,7 @@ apply plugin: 'com.uber.okbuck'
okbuck {
target = "android-${config.build.compileSdkVersion}"
buildToolVersion = config.build.buildToolsVersion
+ resourceUnion = false
}
def ENTRIES_TO_DELETE = [
@@ -194,3 +197,35 @@ def adjustPackage(Project project, String className) {
sourceFile.text = sourceFile.text.replaceAll("package gradle.example;", "package ${projectPackage};")
sourceFile.renameTo(new File(exampleClassFolder, "${className}.java"))
}
+
+// Prevents resolving any configurations during evaluation
+class ConfigurationNullifierListener implements DependencyResolutionListener {
+
+ private final Project root
+
+ ConfigurationNullifierListener(Project root) {
+ this.root = root
+ }
+
+ void beforeResolve(ResolvableDependencies dependencies) {
+ String name = dependencies.name
+ String path = dependencies.path
+ String projectPath = path.substring(0, path.lastIndexOf(":"))
+ Project p = root.project(projectPath)
+ try {
+ Configuration config = p.configurations.getByName(name)
+ config.dependencies.clear()
+ config.extendsFrom = []
+ } catch(Exception ignored) { }
+ }
+
+ void afterResolve(ResolvableDependencies dependencies) { }
+}
+
+if (System.getProperty("okbuck.wrapper", "false") == "true") {
+ final ConfigurationNullifierListener configurationNullifierListener = new ConfigurationNullifierListener(project)
+ gradle.addListener(configurationNullifierListener)
+ gradle.projectsEvaluated {
+ gradle.removeListener(configurationNullifierListener)
+ }
+}