Skip to content
Snippets Groups Projects
Select Git revision
  • 34499bb95e25962ffdb96c72b93b241a47e08b84
  • develop default protected
  • support-for-intellij-25.1
  • chore/support-for-intellijj-2024.3
  • feature/references
  • feature/commenter-for-aspect-files
  • feature/link-generated-code-and-definition
  • main
  • legacy
  • v0.3.5 protected
  • v0.3.4 protected
  • v0.3.3 protected
  • v0.3.2 protected
  • v0.3.1 protected
  • v0.3.0 protected
  • v0.2.0 protected
16 results

build.gradle.kts

Blame
  • build.gradle.kts 6.07 KiB
    import io.gitlab.arturbosch.detekt.Detekt
    import org.jetbrains.changelog.markdownToHTML
    import org.jetbrains.grammarkit.tasks.GenerateLexer
    import org.jetbrains.grammarkit.tasks.GenerateParser
    import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
    
    fun properties(key: String) = project.findProperty(key).toString()
    
    plugins {
    
        id("idea")
        // Java support
        id("java")
        // Kotlin support
        id("org.jetbrains.kotlin.jvm") version "1.5.10"
        // gradle-intellij-plugin - read more: https://github.com/JetBrains/gradle-intellij-plugin
        id("org.jetbrains.intellij") version "1.0"
        // gradle-changelog-plugin - read more: https://github.com/JetBrains/gradle-changelog-plugin
        id("org.jetbrains.changelog") version "1.1.2"
        // detekt linter - read more: https://detekt.github.io/detekt/gradle.html
        id("io.gitlab.arturbosch.detekt") version "1.18.1"
        // ktlint linter - read more: https://github.com/JLLeitschuh/ktlint-gradle
        id("org.jlleitschuh.gradle.ktlint") version "10.2.0"
    
        id("org.jetbrains.grammarkit") version "2021.1.3"
    }
    
    group = properties("pluginGroup")
    version = properties("pluginVersion")
    
    // Configure project's dependencies
    repositories {
        mavenCentral()
    }
    dependencies {
        detektPlugins("io.gitlab.arturbosch.detekt:detekt-formatting:1.18.1")
    }
    java {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }
    
    idea {
        module {
            generatedSourceDirs.add(file("./src/gen"))
        }
    }
    
    // Configure gradle-intellij-plugin plugin.
    // Read more: https://github.com/JetBrains/gradle-intellij-plugin
    intellij {
        pluginName.set(properties("pluginName"))
        version.set(properties("platformVersion"))
        type.set(properties("platformType"))
        downloadSources.set(properties("platformDownloadSources").toBoolean())
        updateSinceUntilBuild.set(true)
    
        // Plugin Dependencies. Uses `platformPlugins` property from the gradle.properties file.
        plugins.set(properties("platformPlugins").split(',').map(String::trim).filter(String::isNotEmpty))
    }
    
    sourceSets {
        main {
            java.srcDir("src/gen/java")
        }
    }
    
    // Configure gradle-changelog-plugin plugin.
    // Read more: https://github.com/JetBrains/gradle-changelog-plugin
    changelog {