Skip to content
Permalink
Browse files

First try to migrate the buildSrc IDE plugin to the dev plugin

  • Loading branch information...
lacasseio committed Oct 7, 2019
1 parent 1d20971 commit cf7d8d51c8b4f72cdba2b89a9df9369834f915ce
@@ -4,7 +4,6 @@ import dev.gradleplugins.OpenSourceSoftwareLicensePlugin

plugins {
id("com.gradle.build-scan") version "2.3"
dev.gradleplugins.experimental.ide
dev.gradleplugins.experimental.setup
id("dev.gradleplugins.java-gradle-plugin") version "0.0.21" apply false
}
@@ -2,6 +2,7 @@ plugins {
id("dev.gradleplugins.java-gradle-plugin")
dev.gradleplugins.experimental.`shaded-artifact`
`maven-publish`
dev.gradleplugins.experimental.ide
}

// Supported by the development plugins
@@ -17,6 +17,7 @@
package dev.gradleplugins.internal;

import com.gradle.publish.PublishPlugin;
import dev.gradleplugins.internal.ide.IdePlugin;
import dev.gradleplugins.internal.tasks.FakeAnnotationProcessorTask;
import org.gradle.api.Action;
import org.gradle.api.JavaVersion;
@@ -45,6 +46,7 @@ public void apply(Project project) {

project.getPluginManager().apply(SpockFunctionalTestingPlugin.class); // For functional testing
project.getPluginManager().apply(PublishPlugin.class); // For publishing
project.getPluginManager().apply(IdePlugin.class);

configureDefaultJavaCompatibility(project.getExtensions().getByType(JavaPluginExtension.class));

@@ -0,0 +1,43 @@
/*
* Copyright 2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package dev.gradleplugins.internal.ide;

import org.gradle.api.Plugin;
import org.gradle.api.Project;
import org.gradle.plugins.ide.idea.IdeaPlugin;
import org.gradle.plugins.ide.idea.model.IdeaModel;

public class IdePlugin implements Plugin<Project> {
@Override
public void apply(Project project) {
project.getPluginManager().withPlugin("org.jetbrains.gradle.plugin.idea-ext", appliedPlugin -> {
project.getTasks().named("idea", task -> {
task.doFirst(it -> {
throw new RuntimeException("To import in IntelliJ, please follow the instructions here: https://github.com/gradle/gradle/blob/master/CONTRIBUTING.md#intellij but use this repo ;-)");
});
});

project.getPlugins().withType(IdeaPlugin.class, plugin -> {
IdeaModel model = project.getExtensions().getByType((IdeaModel.class));
model.project(ideaProject -> {
ideaProject.setJdkName("8.0");
ideaProject.getWildcards().add("?*.gradle");
});
});
});
}
}
@@ -16,6 +16,7 @@

plugins {
id("dev.gradleplugins.java-gradle-plugin")
dev.gradleplugins.experimental.ide
}

gradlePlugin {
@@ -16,6 +16,7 @@

plugins {
id("dev.gradleplugins.java-gradle-plugin")
dev.gradleplugins.experimental.ide
}

gradlePlugin {

0 comments on commit cf7d8d5

Please sign in to comment.
You can’t perform that action at this time.