plugins { java application id("org.javamodularity.moduleplugin") version "1.8.15" id("org.openjfx.javafxplugin") version "0.1.0" id("org.beryx.jlink") version "2.25.0" id("org.jetbrains.intellij.platform") version "2.18.1" } group = "de.addiks.intellij-sdi" version = "1.0-SNAPSHOT" intellijPlatform { pluginConfiguration { id = "de.addiks.intellij-sdi" name = "Single Document Interface - Every document in it's own window" version = "0.0.3" } } repositories { mavenCentral() intellijPlatform { defaultRepositories() } } val junitVersion = "5.12.1" java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } tasks.withType { options.encoding = "UTF-8" } application { mainModule.set("de.addiks.intellijsdi.intellijsdi") mainClass.set("de.addiks.intellijsdi.intellijsdi.HelloApplication") } javafx { version = "21.0.6" modules = listOf("javafx.controls", "javafx.fxml") } dependencies { testImplementation("org.junit.jupiter:junit-jupiter-api:${junitVersion}") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:${junitVersion}") intellijPlatform { intellijIdea("2026.1") } } tasks.withType { useJUnitPlatform() } jlink { imageZip.set(layout.buildDirectory.file("/distributions/app-${javafx.platform.classifier}.zip")) options.set(listOf("--strip-debug", "--compress", "2", "--no-header-files", "--no-man-pages")) launcher { name = "app" } }