in buildSrc/src/main/java/com/uber/okbuck/core/dependency/DependencyUtils.java [119:176]
public static Set<OExternalDependency> resolveExternal(
Project project,
Configuration configuration,
ExternalDependenciesExtension externalDependenciesExtension,
JetifierExtension jetifierExtension) {
enforceChangingDeps(project, configuration);
try {
Set<ResolvedArtifactResult> consumableArtifacts =
configuration
.getIncoming()
.getArtifacts()
.getArtifacts()
.stream()
.filter(
artifact ->
!(artifact.getId().getComponentIdentifier()
instanceof ProjectComponentIdentifier))
.filter(artifact -> DependencyUtils.isConsumable(artifact.getFile()))
.collect(Collectors.toSet());
Map<ComponentIdentifier, ResolvedArtifactResult> componentIdToSourcesArtifactMap =
new HashMap<>(ProjectUtil.downloadSources(project, consumableArtifacts));
return consumableArtifacts
.stream()
.map(
artifact -> {
ComponentIdentifier identifier = artifact.getId().getComponentIdentifier();
ResolvedArtifactResult sourcesArtifact =
componentIdToSourcesArtifactMap.get(identifier);
if (identifier instanceof ModuleComponentIdentifier
&& ((ModuleComponentIdentifier) identifier).getVersion().length() > 0) {
ModuleComponentIdentifier moduleIdentifier =
(ModuleComponentIdentifier) identifier;
return ProjectUtil.getDependencyFactory(project)
.from(
moduleIdentifier.getGroup(),
moduleIdentifier.getModule(),
moduleIdentifier.getVersion(),
artifact.getFile(),
sourcesArtifact != null ? sourcesArtifact.getFile() : null,
externalDependenciesExtension,
jetifierExtension);
} else {
return ProjectUtil.getDependencyFactory(project)
.fromLocal(
artifact.getFile(),
sourcesArtifact != null ? sourcesArtifact.getFile() : null,
externalDependenciesExtension,
jetifierExtension);
}
})
.collect(Collectors.toSet());
} catch (DefaultLenientConfiguration.ArtifactResolveException e) {
throw artifactResolveException(e);
}
}