public JavaPluginConvention getJavaConvention(final Project project) { return project.getConvention().getPlugin(JavaPluginConvention.class); }
@Override public void apply(Project project) { project.getPlugins().apply(ClojureBasePlugin.class); project.getPlugins().apply(ClojureCommonPlugin.class); ClojureExtension extension = project.getExtensions().getByType(ClojureExtension.class); configureBuilds(project, extension); JavaPluginConvention javaConvention = project.getConvention().getPlugin(JavaPluginConvention.class); ClojureCommonPlugin.configureDevSource(javaConvention, sourceSet -> { ClojureSourceSet src = (ClojureSourceSet) new DslObject(sourceSet).getConvention().getPlugins().get("clojure"); return src.getClojure(); }); }
@Nullable public String getMainClass() { return getProject() .getConvention() .getPlugin(ApplicationPluginConvention.class) .getMainClassName(); }
private void configureSourceSetDefaults(final JavaBasePlugin javaBasePlugin) { _project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().all( sourceSet -> { DefaultGosuSourceSet gosuSourceSet = new DefaultGosuSourceSet(((DefaultSourceSet) sourceSet).getDisplayName(), _fileResolver); new DslObject(sourceSet).getConvention().getPlugins().put("gosu", gosuSourceSet); gosuSourceSet.getGosu().srcDir("src/" + sourceSet.getName() + "/gosu"); sourceSet.getResources().getFilter().exclude( element -> { return gosuSourceSet.getGosu().contains(element.getFile()); }); sourceSet.getAllSource().source(gosuSourceSet.getGosu()); configureGosuCompile(javaBasePlugin, sourceSet, gosuSourceSet); }); }
public JvmTarget( Project project, String name, String aptConfigurationName, String testAptConfigurationName) { super(project, name); this.aptConfigurationName = aptConfigurationName; this.testAptConfigurationName = testAptConfigurationName; sourceSets = getProject().getConvention().getPlugin(JavaPluginConvention.class).getSourceSets(); isKotlin = project.getPlugins().stream().anyMatch(plugin -> plugin instanceof KotlinBasePluginWrapper); Optional<Task> compileTask = project.getTasks().stream().filter(it -> it instanceof AbstractCompile).findFirst(); if (compileTask.isPresent()) { fakeCompile = (AbstractCompile) compileTask.get(); } else { fakeCompile = null; } }
public String getMavenCoords() { String group = getProject().getGroup().toString(); String id = getProject().getConvention().getPlugin(BasePluginConvention.class).getArchivesBaseName(); String version = getProject().getVersion().toString(); return String.join(":", group, id, version); }
public String getTargetCompatibility() { return javaVersion( getProject() .getConvention() .getPlugin(JavaPluginConvention.class) .getTargetCompatibility()); }
public String getSourceCompatibility() { return javaVersion( getProject() .getConvention() .getPlugin(JavaPluginConvention.class) .getSourceCompatibility()); }
protected void setupTask(SpotlessTask task) { if (target == null) { JavaPluginConvention convention = getProject().getConvention().getPlugin(JavaPluginConvention.class); if (convention == null || !getProject().getPlugins().hasPlugin(GroovyBasePlugin.class)) { throw new GradleException("You must apply the groovy plugin before the spotless plugin if you are using the groovy extension."); GroovySourceSet groovySourceSet = new DslObject(sourceSet).getConvention().getPlugin(GroovySourceSet.class); if (excludeJava) { union = union.plus(groovySourceSet.getAllGroovy());
private JavaPluginConvention getJavaPluginConvention(final Project project) { final JavaPluginConvention javaPlugin = project.getConvention().getPlugin(JavaPluginConvention.class); if (javaPlugin == null) { throw new GradleException("You must apply the java plugin before the classycle plugin."); } return javaPlugin; }
private String testOutputDirsPath() { final JavaPluginConvention javaPlugin = project.getConvention().getPlugin(JavaPluginConvention.class); final SourceSetContainer sourceSets = javaPlugin.getSourceSets(); return sourceSets.stream() .filter(ss -> "test".equals(ss.getName())) .peek(sourceSet -> LOGGER.debug("finding output dir for sourceSet " + sourceSet.getName())) .map(SourceSet::getJava) .map(SourceDirectorySet::getOutputDir) .map(outputDir -> outputDir.toPath().toAbsolutePath().toString()) .collect(Collectors.joining(":")); } @Override
private List<String> outputDirsPath() { final JavaPluginConvention javaPlugin = project.getConvention().getPlugin(JavaPluginConvention.class); final SourceSetContainer sourceSets = javaPlugin.getSourceSets(); return sourceSets.stream() .filter(ss -> "main".equals(ss.getName())) .peek(sourceSet -> LOGGER.debug("finding output dir for sourceSet " + sourceSet.getName())) .map(SourceSet::getJava) .map(SourceDirectorySet::getOutputDir) .map(outputDir -> outputDir.toPath().toAbsolutePath().toString()) .collect(Collectors.toList()); } @Override
@Override public void apply(final Project project) { final VelocityPluginExtension extension = project.getExtensions().create("velocity", VelocityPluginExtension.class); project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().all( new Action<SourceSet>() { @Override public void execute(SourceSet t) { apply(project, t, extension); } }); }
private static void configureJdkSourceAndTarget(Project project, Map<String, Object> properties) { JavaPluginConvention javaPluginConvention = new DslObject(project).getConvention().getPlugin(JavaPluginConvention.class); properties.put(SONAR_JAVA_SOURCE_PROP, javaPluginConvention.getSourceCompatibility()); properties.put(SONAR_JAVA_TARGET_PROP, javaPluginConvention.getTargetCompatibility()); }
/** * Get the library directory * * @return Library directory */ public File getLibsDir() { BasePluginConvention baseConvention = this.project.getConvention().getPlugin(BasePluginConvention.class); File libsDir = Validate.notNull(baseConvention.getLibsDir(), "The libs dir must not be null"); return libsDir; }
/** * Provide the base plugin convention * * @param project Project to get convention from * @return Base plugin convention */ @Model @Hidden public BasePluginConvention basePluginConvention(Project project) { return project.getConvention().getPlugin(BasePluginConvention.class); }
/** * Provide the Java plugin convention * * @param project Project to get convention from * @return Java plugin convention */ @Model @Hidden public JavaPluginConvention javaPluginConvention(Project project) { return project.getConvention().getPlugin(JavaPluginConvention.class); }
private void configureGosuDoc( final Project project ) { GosuDoc gosuDoc = project.getTasks().create(GOSUDOC_TASK_NAME, GosuDoc.class); gosuDoc.setDescription("Generates Gosudoc API documentation for the main source code."); gosuDoc.setGroup(JavaBasePlugin.DOCUMENTATION_GROUP); JavaPluginConvention convention = project.getConvention().getPlugin(JavaPluginConvention.class); SourceSet sourceSet = convention.getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME); gosuDoc.setClasspath(sourceSet.getOutput().plus(sourceSet.getCompileClasspath())); Convention sourceSetConvention = (Convention) InvokerHelper.getProperty(sourceSet, "convention"); GosuSourceSet gosuSourceSet = sourceSetConvention.getPlugin(GosuSourceSet.class); gosuDoc.setSource((Object) gosuSourceSet.getGosu()); // Gradle 4.0 overloads setSource; must upcast to Object for backwards compatibility }
private FileCollection getOutputClassDir(Project project) { return project.getConvention() .getPlugin(JavaPluginConvention.class) .getSourceSets() .getByName("main") .getOutput() .getClassesDirs(); }
private void configureLibPropertiesTask(PropertiesTask thin, Project project) { thin.setConfiguration(findRuntimeClasspath(project)); SourceSetContainer sourceSets = project.getConvention() .getPlugin(JavaPluginConvention.class).getSourceSets(); File resourcesDir = sourceSets.getByName("main").getOutput().getResourcesDir(); thin.setOutput(new File(resourcesDir, "META-INF")); }