private void configureSourceSetInjection(final Project p, SourceSet sourceSet) { EtaInjectDependencies injectDependenciesTask = p.getTasks() .create(NamingScheme.getInjectDependenciesTaskName(sourceSet.getName()), EtaInjectDependencies.class); injectDependenciesTask.setTargetConfiguration (project.provider(() -> sourceSet.getCompileClasspathConfigurationName())); injectDependenciesTask.dependsOnProjects(); sourceSet.setCompileClasspath (sourceSet.getCompileClasspath() .plus(p.files().builtBy(injectDependenciesTask))); }
project.getDependencies().add(NREPL_CONFIGURATION_NAME, "nrepl:nrepl:0.3.1"); project.getConfigurations().getByName(dev.getCompileClasspathConfigurationName()).extendsFrom(nrepl); project.getConfigurations().getByName(dev.getRuntimeClasspathConfigurationName()).extendsFrom(nrepl); test.getOutput(), main.getOutput(), project.getConfigurations().getByName(dev.getCompileClasspathConfigurationName()))); dev.setRuntimeClasspath(project.files( dev.getAllSource().getSourceDirectories(),
project.getDependencies().add(NREPL_CONFIGURATION_NAME, "nrepl:nrepl:0.5.1"); project.getConfigurations().getByName(dev.getCompileClasspathConfigurationName()).extendsFrom(nrepl); project.getConfigurations().getByName(dev.getRuntimeClasspathConfigurationName()).extendsFrom(nrepl); test.getOutput(), main.getOutput(), project.getConfigurations().getByName(dev.getCompileClasspathConfigurationName()))); dev.setRuntimeClasspath(project.files( dev.getAllSource().getSourceDirectories(),
private void configureDev(Project project, JavaPluginConvention javaConvention) { SourceSet main = javaConvention.getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME); SourceSet test = javaConvention.getSourceSets().getByName(SourceSet.TEST_SOURCE_SET_NAME); SourceSet dev = javaConvention.getSourceSets().create(DEV_SOURCE_SET_NAME); dev.setCompileClasspath(project.files(test.getOutput(), main.getOutput(), project.getConfigurations().getByName(dev.getCompileClasspathConfigurationName()))); dev.setRuntimeClasspath(project.files(dev.getAllSource().getSourceDirectories(), test.getAllSource().getSourceDirectories(), main.getAllSource().getSourceDirectories(), project.getConfigurations().getByName(dev.getRuntimeClasspathConfigurationName()))); Stream.<Function<SourceSet, String>>of(SourceSet::getCompileConfigurationName, SourceSet::getImplementationConfigurationName, SourceSet::getRuntimeConfigurationName, SourceSet::getRuntimeOnlyConfigurationName).forEach(getter -> { Configuration devConf = project.getConfigurations().getByName(getter.apply(dev)); Configuration testConf = project.getConfigurations().getByName(getter.apply(test)); devConf.extendsFrom(testConf); }); project.getTasks().create("clojureRepl", ClojureNRepl.class, task -> { task.setGroup("run"); task.setDescription("Starts an nREPL server."); task.setClasspath(dev.getRuntimeClasspath()); }); } }
private void configureToolsConfigurations(Project project) { Configuration tools = project.getConfigurations().create(TOOLS_CONFIGURATION_NAME); tools.defaultDependencies(deps -> { deps.add(project.getDependencies().create("io.github.gradle-clojure:gradle-clojure-tools:" + getVersion())); }); // TODO does this JAR get included via shadow or application plugins? project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().all(sourceSet -> { project.getConfigurations().getByName(sourceSet.getCompileClasspathConfigurationName()).extendsFrom(tools); project.getConfigurations().getByName(sourceSet.getRuntimeClasspathConfigurationName()).extendsFrom(tools); }); }
private void configureToolsConfigurations(Project project) { Configuration tools = project.getConfigurations().create(TOOLS_CONFIGURATION_NAME); tools.defaultDependencies(deps -> { deps.add(project.getDependencies().create("io.github.gradle-clojure:gradle-clojure-tools:" + getVersion())); }); // TODO does this JAR get included via shadow or application plugins? project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().all(sourceSet -> { project.getConfigurations().getByName(sourceSet.getCompileClasspathConfigurationName()).extendsFrom(tools); project.getConfigurations().getByName(sourceSet.getRuntimeClasspathConfigurationName()).extendsFrom(tools); }); }
= project.provider(() -> sourceSet.getCompileClasspathConfigurationName());