diff options
author | Alex Ruiz <alruiz@google.com> | 2013-10-10 19:18:47 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2013-10-10 19:18:48 +0000 |
commit | fadbd7b5cc59107a2d511426c440f6d033a31059 (patch) | |
tree | cb593e22e6f7ef55d0c43212cec47bdc94a0ee2f | |
parent | 23ac2e1148d1863bb4b9781379d1e286e5ed5d44 (diff) | |
parent | 7472d12db00e2f8325633efa96d2e0982382fda6 (diff) | |
download | build-fadbd7b5cc59107a2d511426c440f6d033a31059.tar.gz |
Merge "Added more options for dependency resolution."
-rw-r--r-- | gradle/src/main/groovy/com/android/build/gradle/BasePlugin.groovy | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.groovy b/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.groovy index 000b418..dc66176 100644 --- a/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.groovy +++ b/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.groovy @@ -1514,13 +1514,26 @@ public abstract class BasePlugin { static def collectArtifacts(Configuration configuration, Map<ModuleVersionIdentifier, List<ResolvedArtifact>> artifacts) { - boolean buildModelOnly = Boolean.getBoolean(AndroidProject.BUILD_MODEL_ONLY_SYSTEM_PROPERTY); + // This property indicates how dependencies should be resolved: + // 1. null: Resolve dependencies and fail if some dependency cannot be resolved + // 2. true: Do not resolve dependencies + // 3. false: Resolve dependencies and do not fail if some dependency cannot be resolved + // Option #1 is used when building a project either on the command line or from Android Studio. + // Option #2 and #3 are used for importing a project into Android Studio. + def buildModelOnlyProperty = System.getProperty(AndroidProject.BUILD_MODEL_ONLY_SYSTEM_PROPERTY) def allArtifacts - if (buildModelOnly) { - allArtifacts = configuration.resolvedConfiguration.lenientConfiguration.getArtifacts(Specs.satisfyAll()) - } else { + if (buildModelOnlyProperty == null) { allArtifacts = configuration.resolvedConfiguration.resolvedArtifacts } + else { + boolean buildModelOnly = Boolean.parseBoolean(buildModelOnlyProperty) + if (buildModelOnly) { + allArtifacts = Collections.emptySet() + } + else { + allArtifacts = configuration.resolvedConfiguration.lenientConfiguration.getArtifacts(Specs.satisfyAll()) + } + } allArtifacts.each { ResolvedArtifact artifact -> def id = artifact.moduleVersion.id |