private static void downloadAuxiliaryArtifacts(DependencyHandler dependencyHandler, Multimap<ComponentIdentifier, IdeExtendedRepoFileDependency> dependencies, List<Class<? extends Artifact>> artifactTypes) {
if (artifactTypes.isEmpty()) {
return;
}
ArtifactResolutionQuery query = dependencyHandler.createArtifactResolutionQuery();
query.forComponents(dependencies.keySet());
@SuppressWarnings("unchecked") Class<? extends Artifact>[] artifactTypesArray = (Class<? extends Artifact>[]) new Class<?>[artifactTypes.size()];
query.withArtifacts(JvmLibrary.class, artifactTypes.toArray(artifactTypesArray));
Set<ComponentArtifactsResult> componentResults = query.execute().getResolvedComponents();
AuxiliaryArtifactMatchStrategy auxiliaryArtifactMatchStrategy = new ShortestNameAuxiliaryArtifactMatchStrategy();
for (ComponentArtifactsResult componentResult : componentResults) {
for (IdeExtendedRepoFileDependency dependency : dependencies.get(componentResult.getId())) {