protected void appendDependenciesOf(@Nonnull Configuration configuration, @Nonnull Collection<GolangDependency> to) { for (final Dependency dependency : configuration.getDependencies()) { final GolangDependency toAdd; if (dependency instanceof GolangDependency) { toAdd = (GolangDependency) dependency; } else { toAdd = new GolangDependency(dependency); } if (!to.contains(toAdd)) { to.add(toAdd); } } }
@Nonnull public Dependency doAdd(@Nonnull String configurationName, @Nonnull Dependency dependency) { final Configuration configuration = _configurationContainer.getByName(configurationName); configuration.getDependencies().add(dependency); return dependency; }
@Nonnull protected Dependency doAdd(@Nonnull String configurationName, @Nonnull Dependency dependency, @Nullable Closure<?> configureWith) { if (!_root) { throw new IllegalStateException("Adding of dependencies for golang is currently not support at task level."); } final Configuration configuration = _project.getConfigurations().getByName(configurationName); configuration.getDependencies().add(dependency); if (configureWith != null) { return configure(configureWith, dependency); } return dependency; }
@Override public void execute(ResolvableDependencies resolvableDependencies) { if (config.getDependencies().isEmpty()) { config.getDependencies().add(project.getDependencies().create( "org.jacoco:org.jacoco.ant:" + jacocoVersion)); } } });
@Override public void execute(ResolvableDependencies resolvableDependencies) { if (config.getDependencies().isEmpty()) { config.getDependencies().add(project.getDependencies().create( "org.jacoco:org.jacoco.agent:" + jacocoVersion)); } } });
private void addConfiguration(Project project, Configuration configuration) { configuration.getDependencies().forEach(dependency -> addDependency(project, configuration, dependency)); }
public static Optional<TestEngine> select(Project project) { var configurations = project.getConfigurations(); var testImplementation = configurations.getByName("testImplementation").getDependencies().stream(); var testCompile = configurations.getByName("testCompile").getDependencies().stream(); return Stream.concat(testImplementation, testCompile) .map(d -> TestEngine.select(d.getGroup(), d.getName())) .filter(Optional::isPresent) .map(Optional::get) .findAny(); }
private void clearJavaFXDependencies() { var implementationConfiguration = project.getConfigurations().findByName("implementation"); if (implementationConfiguration != null) { implementationConfiguration.getDependencies() .removeIf(dependency -> MAVEN_JAVAFX_ARTIFACT_GROUP_ID.equals(dependency.getGroup())); } } }
private static VersionNumber retrolambdaVersion(Configuration retrolambdaConfig) { retrolambdaConfig.resolve(); Dependency retrolambdaDep = retrolambdaConfig.getDependencies().iterator().next(); if (retrolambdaDep.getVersion() == null) { // Don't know version return null; } return VersionNumber.parse(retrolambdaDep.getVersion()); }
@Override Set<File> getFilesOnConfiguration() { List<Dependency> rawPomDependencies = new ArrayList<>(); for(org.gradle.api.artifacts.Dependency dependency: configuration.getDependencies()) { rawPomDependencies.add(project.getDependencies().create(dependency.getGroup() + ":" + dependency.getName() + ":" + dependency.getVersion() + "@pom")); } return project.getConfigurations().detachedConfiguration( rawPomDependencies.toArray(new org.gradle.api.artifacts.Dependency[0])).resolve(); } }
@Override public void execute(ResolvableDependencies resolvableDependencies) { // Allows custom minicondaInstaller ivy dependency override if (configuration.getDependencies().isEmpty()) { MinicondaInstaller installer = new MinicondaInstaller(os, miniconda); installer.addToDependencyHandler(project.getDependencies()); } } });
private void configureNebulaResolutionRules(Project project) { Configuration resolutionRulesConfiguration = project.getRootProject().getConfigurations().getAt("resolutionRules"); resolutionRulesConfiguration.getDependencies().add(project.getDependencies().create("com.netflix.nebula:gradle-resolution-rules:0.52.0")); NebulaResolutionRulesExtension resolutionRulesExtension = (NebulaResolutionRulesExtension) project.getExtensions().getByName("nebulaResolutionRules"); resolutionRulesExtension.getOptional().add("slf4j-bridge"); project.afterEvaluate((o) -> { project.getLogger().lifecycle("Optional resolution rules: {}", resolutionRulesExtension.getOptional()); resolutionRulesConfiguration.getDependencies().forEach(dependency -> project.getLogger().lifecycle("Resolution rules dependency: {}", dependency)); }); } }
@Override public ModelSource resolveModel(String groupId, String artifactId, String version) throws UnresolvableModelException { String configName = String.format("pomTransform%s", UUID.randomUUID()); Configuration config = getProject().getConfigurations().create(configName); config.setTransitive(false); String depNotation = String.format("%s:%s:%s@pom", groupId, artifactId, version); org.gradle.api.artifacts.Dependency dependency = getProject().getDependencies().create(depNotation); config.getDependencies().add(dependency); File pomXml = config.getSingleFile(); return new ModelSource() { @Override public InputStream getInputStream() throws IOException { return new FileInputStream(pomXml); } @Override public String getLocation() { return pomXml.getAbsolutePath(); } }; }
private Configuration createConfiguration(List<PomReference> pomReferences) { Configuration configuration = this.configurationContainer.newConfiguration(); for (PomReference pomReference: pomReferences) { Coordinates coordinates = pomReference.getCoordinates(); configuration.getDependencies().add(this.dependencyHandler.create(coordinates.getGroupId() + ":" + coordinates.getArtifactId() + ":" + coordinates.getVersion() + "@pom")); } return configuration; }
private void executeCheckDependencyVersions(DependencyMap dependencyMap, Configuration cdvConfiguration, CheckDependencyVersionsReport report) { Set<ArtifactId> dependencyArtifactIds = dependencyMap.keySet().stream().map(DependencyKey::getArtifactId) .collect(Collectors.toSet()); for (ArtifactId dependencyArtifactId : dependencyArtifactIds) { String dependencyArtifactIdString = dependencyArtifactId.toString(); getProject().getLogger().info("Checking latest version for dependency {}...", dependencyArtifactIdString); String artifactDependencyString = dependencyArtifactIdString + ":+"; Dependency artifactDependency = getProject().getDependencies().create(artifactDependencyString); cdvConfiguration.getDependencies().add(artifactDependency); } cdvConfiguration.resolutionStrategy(resolutionStrategy -> resolutionStrategy .componentSelection(componentSelectionRules -> componentSelectionRules .all(componentSelection -> filterComponentenSelection(dependencyMap, componentSelection)))); LenientConfiguration resolvedCdvConfiguration = cdvConfiguration.getResolvedConfiguration() .getLenientConfiguration(); Map<ArtifactId, ResolvedArtifact> resolvedArtifactsMap = buildResolvedArtifactsMap( resolvedCdvConfiguration.getArtifacts()); evalDependencyVersions(dependencyMap, resolvedArtifactsMap, report); }
@Override public FileCollection createDelegate() { checkRequiredSettings(project, hydraSettings); String scalaVersion = getScalaVersion(classpath); Configuration hydraConfiguration = project.getConfigurations().detachedConfiguration( new DefaultExternalModuleDependency("com.triplequote", "hydra_" + scalaVersion, hydraSettings.getVersion()) ); hydraConfiguration.exclude(excludeProperties("org.scala-lang", "scala-reflect")); hydraConfiguration.exclude(excludeProperties("com.triplequote", "scala-library")); LOGGER.debug("Hydra version: {}. Inferred Scala classpath: {}", hydraSettings.getVersion(), hydraConfiguration.getFiles()); Configuration hydraDashboardConfiguration = project.getConfigurations().getByName(HydraBasePlugin.HYDRA_DASHBOARD_CONFIGURATION); if (hydraDashboardConfiguration.getDependencies().isEmpty()) { hydraDashboardConfiguration.getDependencies().add( new DefaultExternalModuleDependency("com.triplequote", "dashboard-client_2.12", hydraSettings.getMetricsServiceVersion()) ); } return hydraConfiguration; }
private Set<ResolvedDependency> doResolve(final Collection<ArtifactSpec> deps) { final Configuration config = this.project.getConfigurations().detachedConfiguration(); final DependencySet dependencySet = config.getDependencies(); deps.forEach(spec -> { final DefaultExternalModuleDependency d = new DefaultExternalModuleDependency(spec.groupId(), spec.artifactId(), spec.version()); final DefaultDependencyArtifact da = new DefaultDependencyArtifact(spec.artifactId(), spec.type(), spec.type(), spec.classifier(), null); d.addArtifact(da); d.getExcludeRules().add(new DefaultExcludeRule()); dependencySet.add(d); }); return config.getResolvedConfiguration().getFirstLevelModuleDependencies(); }
static Set<ResolvedDependency> gatherDependencies(Project project, Set<String> repositories, Set<String> dependencies) { for (final String r : repositories) { project.getRepositories().ivy(new Action<IvyArtifactRepository>() { @Override public void execute(IvyArtifactRepository ivyArtifactRepository) { ivyArtifactRepository.setUrl(r); } }); } Configuration conf = project.getConfigurations().create("nxtTmp" + count++); for (String id : dependencies) { conf.getDependencies().add(project.getDependencies().create(id)); } return gatherDependencies(conf.getResolvedConfiguration().getFirstLevelModuleDependencies()); }
static Set<ResolvedDependency> gatherDependencies(Project project, Set<String> repositories, Set<String> dependencies) { for (final String r : repositories) { project.getRepositories().ivy(new Action<IvyArtifactRepository>() { @Override public void execute(IvyArtifactRepository ivyArtifactRepository) { ivyArtifactRepository.setUrl(r); } }); } Configuration conf = project.getConfigurations().create("gpTmp" + count++); for (String id : dependencies) { conf.getDependencies().add(project.getDependencies().create(id)); } return gatherDependencies(conf.getResolvedConfiguration().getFirstLevelModuleDependencies()); }
static Set<ResolvedDependency> gatherDependencies(Project project, Set<String> repositories, Set<String> dependencies) { for (final String r : repositories) { project.getRepositories().ivy(new Action<IvyArtifactRepository>() { @Override public void execute(IvyArtifactRepository ivyArtifactRepository) { ivyArtifactRepository.setUrl(r); } }); } Configuration conf = project.getConfigurations().create("nxtTmp" + count++); for (String id : dependencies) { conf.getDependencies().add(project.getDependencies().create(id)); } return gatherDependencies(conf.getResolvedConfiguration().getFirstLevelModuleDependencies()); }