@Override public void execute(final Project project) { configureCompileJavaTask(project); configureCompileTestJavaTask(project); configureTestTask(project); project.getPluginManager().withPlugin(APPLICATION_PLUGIN, new Action<AppliedPlugin>() { @Override public void execute(AppliedPlugin appliedPlugin) { configureRunTask(project); configureStartScriptsTask(project); } }); } });
private static void configureTaskDependencies(final Project project, final SourceSet sourceSet, final GenerateAvroJavaTask javaTask) { project.getPluginManager().withPlugin("org.jetbrains.kotlin.jvm", new Action<AppliedPlugin>() { @Override public void execute(AppliedPlugin appliedPlugin) { project.getTasks().matching(new Spec<Task>() { @Override public boolean isSatisfiedBy(Task task) { String compilationTaskName = sourceSet.getCompileTaskName("kotlin"); return compilationTaskName.equals(task.getName()); } }) .all(new Action<Task>() { @Override public void execute(Task task) { if (task instanceof SourceTask) { ((SourceTask) task).source(javaTask.getOutputs()); } else { task.dependsOn(javaTask); } } }); } }); }
public void configureRun(Project project, String moduleName) { project.getPluginManager().withPlugin(ApplicationPlugin.APPLICATION_PLUGIN_NAME, plugin -> { if (project.getPlugins().hasPlugin("application")) { JavaExec execTask = (JavaExec) project.getTasks().findByName(ApplicationPlugin.TASK_RUN_NAME); execTask.getExtensions().create("moduleOptions", ModuleOptions.class, project); updateJavaExecTask(execTask, moduleName); updateStartScriptsTask(project, execTask, moduleName); } }); }
@Override public void apply( Project project ) { ExtensionContainer extensions = project.getExtensions(); extensions.create( "xeno", XenoExtension.class ); extensions.configure( XenoExtension.class, xeno -> { if ( xeno.getSourceSets().isEmpty() ) { project.getPluginManager().withPlugin( "kotlin-source-set", p -> { SourceSet main = project.getExtensions() .getByType( SourceSetContainer.class ) .getByName( SourceSet.MAIN_SOURCE_SET_NAME ); xeno.setSourceSets( Collections.singleton( main ) ); } ); } } ); Arrays.asList( IntelliJDefaultsPlugin.class, TestSuiteConfigPlugin.class, KotlinDefaultsPlugin.class, DependencyManagement.class, SemVerPlugin.class, MavenRepositories.class, MavenPublishing.class ).forEach( plugin -> project.getPluginManager().apply( plugin ) ); } }
@Override public void apply(Project project) { // only register callback if this is a TeamCity build, and we are _not_ using the Gradle build runner if (System.getenv(TEAMCITY_VERSION_ENV) != null && System.getenv(GRADLE_BUILDSCAN_TEAMCITY_PLUGIN_ENV) == null) { project.getLogger().quiet(ServiceMessage.of(BUILD_SCAN_SERVICE_MESSAGE_NAME, BUILD_SCAN_SERVICE_STARTED_MESSAGE_ARGUMENT).toString()); project.getPluginManager().withPlugin(BUILD_SCAN_PLUGIN_ID, appliedPlugin -> { BuildScanExtension buildScanExtension = project.getExtensions().getByType(BuildScanExtension.class); if (supportsScanPublishedListener(buildScanExtension)) { buildScanExtension.buildScanPublished(publishedBuildScan -> { ServiceMessage serviceMessage = ServiceMessage.of( BUILD_SCAN_SERVICE_MESSAGE_NAME, BUILD_SCAN_SERVICE_URL_MESSAGE_ARGUMENT_PREFIX + publishedBuildScan.getBuildScanUri().toString() ); project.getLogger().quiet(serviceMessage.toString()); } ); } }); } }
project.getPluginManager().withPlugin("java", plugin -> { JavaPluginConvention javaConvention = project.getConvention().getPlugin(JavaPluginConvention.class); project.getPluginManager().withPlugin("eclipse", plugin -> { EclipseProject eclipseProject = project.getExtensions().getByType(EclipseModel.class).getProject(); eclipseProject.buildCommand("net.sf.eclipsecs.core.CheckstyleBuilder");
/** * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPlugins().apply(ProjectConfigPlugin.class); getProject().getPluginManager().withPlugin("java", p -> { getProject().getPluginManager().apply(JavaRules.class); }); } }
@Override public void apply(Project project) { this.project = project; project.getPluginManager().withPlugin("scala", plugin -> { project.getPluginManager().withPlugin("nebula.dependency-recommender", nebulaPlugin -> project.getExtensions().configure(RecommendationProviderContainer.class, recommendations -> recommendations.excludeConfigurations("zinc"))); scalaCompile.getScalaCompileOptions().setAdditionalParameters(ImmutableList.of( "-target:jvm-" + javaConvention.getTargetCompatibility().toString()))); project.getRootProject().getPluginManager().withPlugin("idea", ideaPlugin -> project.getRootProject().getExtensions() .configure(IdeaModel.class, ideaModel -> configureIdeaPlugin(
/** * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(CheckstylePlugin.class); getProject().getPluginManager().withPlugin("java", p -> { applyEclipseRules(getProject()); }); getProject().getPluginManager().withPlugin("eclipse", p -> { applyEclipseRules(getProject()); }); CheckstyleExtension checkstyleConfig = getProject().getExtensions().getByType(CheckstyleExtension.class); checkstyleConfig.setToolVersion("7.3"); }
/** * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(CheckstylePlugin.class); getProject().getPluginManager().withPlugin("java", p -> { applyEclipseRules(getProject()); }); getProject().getPluginManager().withPlugin("eclipse", p -> { applyEclipseRules(getProject()); }); CheckstyleExtension checkstyleConfig = getProject().getExtensions().getByType(CheckstyleExtension.class); checkstyleConfig.setToolVersion("7.3"); }
@Override public void apply(Project project) { project.getPluginManager().withPlugin("java", plugin -> { project.getPluginManager().apply(ErrorPronePlugin.class); String version = Optional.ofNullable(getClass().getPackage().getImplementationVersion()) })); project.getPluginManager().withPlugin("java-gradle-plugin", appliedPlugin -> { project.getTasks().withType(JavaCompile.class).configureEach(javaCompile -> ((ExtensionAware) javaCompile.getOptions()).getExtensions()
/** * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPlugins().apply(ProjectConfigPlugin.class); getProject().getPlugins().apply(MavenPublishPlugin.class); getProject().getPluginManager().withPlugin("java", p -> { getProject().getPluginManager().apply(MavenJavaRules.class); }); } }
/** * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPlugins().apply(ProjectConfigPlugin.class); getProject().getPlugins().apply(MavenPublishPlugin.class); getProject().getPluginManager().withPlugin("java", p -> { getProject().getPluginManager().apply(MavenJavaRules.class); }); } }
@Override public void apply(Project project) { this.project = project; project.getPluginManager().withPlugin("java", plugin -> { project.getPluginManager().apply("com.diffplug.gradle.spotless");
/** * Initialize the Bintray configuration plugin * * <ul> * <li>Apply Project Config Plugin * <li>Apply Maven Config Plugin * <li>Apply Bintray Plugin * </ul> * * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(MavenConfigPlugin.class); getProject().getPluginManager().apply(BintrayPlugin.class); getProject().afterEvaluate(p -> { // The Bintray plugin configures its tasks in a {@link BuildListener}, so we need to force realization of // the extension in order to make it available before the plugin accesses it. They could've just used a // ConventionPlugin... ((ProjectInternal) p).getModelRegistry().realize("bintrayExtension", BintrayExtension.class); }); getProject().getPluginManager().withPlugin("me.seeber.github", p -> { getProject().getPluginManager().apply(GithubPluginRules.class); }); }
/** * <ul> * <li>Apply Project Config Plugin * <li>Apply Java Config Plugin * <li>Apply Groovy Config Plugin * <li>Apply Java Config Plugin * <li>Apply Java Gradle Plugin Plugin * <li>Apply Plugin Publishing Plugin * </ul> * * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(PublishPlugin.class); getProject().getPluginManager().withPlugin("org.gradle.java-gradle-plugin", p -> { getProject().getPluginManager().apply(JavaPluginRules.class); }); DependencyHandler dependencies = getProject().getDependencies(); dependencies.add("compile", dependencies.gradleApi()); dependencies.add("compile", dependencies.localGroovy()); dependencies.add("testCompile", dependencies.gradleTestKit()); }
/** * Initialize the Bintray configuration plugin * * <ul> * <li>Apply Project Config Plugin * <li>Apply Maven Config Plugin * <li>Apply Bintray Plugin * </ul> * * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(MavenConfigPlugin.class); getProject().getPluginManager().apply(BintrayPlugin.class); getProject().afterEvaluate(p -> { // The Bintray plugin configures its tasks in a {@link BuildListener}, so we need to force realization of // the extension in order to make it available before the plugin accesses it. They could've just used a // ConventionPlugin... ((ProjectInternal) p).getModelRegistry().realize("bintrayExtension", BintrayExtension.class); }); getProject().getPluginManager().withPlugin("me.seeber.github", p -> { getProject().getPluginManager().apply(GithubPluginRules.class); }); }
/** * <ul> * <li>Apply Project Config Plugin * <li>Apply Java Config Plugin * <li>Apply Groovy Config Plugin * <li>Apply Java Config Plugin * <li>Apply Java Gradle Plugin Plugin * <li>Apply Plugin Publishing Plugin * </ul> * * @see me.seeber.gradle.plugin.AbstractProjectConfigPlugin#initialize() */ @Override public void initialize() { getProject().getPluginManager().apply(ProjectConfigPlugin.class); getProject().getPluginManager().apply(PublishPlugin.class); getProject().getPluginManager().withPlugin("org.gradle.java-gradle-plugin", p -> { getProject().getPluginManager().apply(JavaPluginRules.class); }); DependencyHandler dependencies = getProject().getDependencies(); dependencies.add("compile", dependencies.gradleApi()); dependencies.add("compile", dependencies.localGroovy()); dependencies.add("testCompile", dependencies.gradleTestKit()); }