From 2937300521879bbe94675d0fb3f46eadccf57abe Mon Sep 17 00:00:00 2001 From: Chris Woodward Date: Thu, 2 Feb 2017 20:11:08 -0800 Subject: [PATCH] Issue #375 - Add jar classifiers to the dependency cache. --- .../uber/okbuck/core/dependency/DependencyCache.groovy | 2 +- .../uber/okbuck/core/dependency/ExternalDependency.groovy | 8 ++++++-- .../okbuck/core/dependency/VersionlessDependency.groovy | 5 +++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/DependencyCache.groovy b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/DependencyCache.groovy index 79adbac63..23dfe5dda 100644 --- a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/DependencyCache.groovy +++ b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/DependencyCache.groovy @@ -98,7 +98,7 @@ class DependencyCache { } superConfiguration.resolvedConfiguration.resolvedArtifacts.each { ResolvedArtifact artifact -> - ExternalDependency dependency = new ExternalDependency(artifact.moduleVersion.id, artifact.file) + ExternalDependency dependency = new ExternalDependency(artifact.moduleVersion.id, artifact.file, artifact.type, artifact.classifier) if (!projectDeps.containsKey(dependency)) { externalDeps.put(dependency, dependency) } diff --git a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/ExternalDependency.groovy b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/ExternalDependency.groovy index ae815e517..feba4b741 100644 --- a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/ExternalDependency.groovy +++ b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/ExternalDependency.groovy @@ -14,7 +14,7 @@ class ExternalDependency extends VersionlessDependency { final DefaultArtifactVersion version final File depFile - ExternalDependency(ModuleVersionIdentifier identifier, File depFile) { + ExternalDependency(ModuleVersionIdentifier identifier, File depFile, String artifactType, String artifactClassifier) { super(identifier) if (identifier.version) { version = new DefaultArtifactVersion(identifier.version) @@ -23,6 +23,10 @@ class ExternalDependency extends VersionlessDependency { } this.depFile = depFile + + if (artifactType == "jar") { + this.classifier = artifactClassifier + } } @Override @@ -53,6 +57,6 @@ class ExternalDependency extends VersionlessDependency { baseName, baseName, LOCAL_DEP_VERSION) - return new ExternalDependency(identifier, localDep) + return new ExternalDependency(identifier, localDep, null, null) } } diff --git a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/VersionlessDependency.groovy b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/VersionlessDependency.groovy index ba2d0ee5e..4a0c2063f 100644 --- a/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/VersionlessDependency.groovy +++ b/buildSrc/src/main/groovy/com/uber/okbuck/core/dependency/VersionlessDependency.groovy @@ -10,6 +10,8 @@ class VersionlessDependency { final String group final String name + String classifier + VersionlessDependency(ModuleVersionIdentifier identifier) { group = identifier.group name = identifier.name @@ -17,6 +19,9 @@ class VersionlessDependency { @Override String toString() { + if (classifier) { + return "${this.group}:${this.name}-${this.classifier}" + } return "${this.group}:${this.name}" }