Navigate authoritative FXML locations, withdraw stale results and preserve host Undo/Redo. Include editor ownership in native problem identity so equal diagnostics from separate owners survive independent cleanup. Qualify both hosts automatically.
44 lines
1.8 KiB
Kotlin
44 lines
1.8 KiB
Kotlin
import org.jetbrains.intellij.platform.gradle.TestFrameworkType
|
|
plugins {
|
|
java
|
|
id("org.jetbrains.intellij.platform") version "2.20.1"
|
|
}
|
|
group = "de.neitzel.fxdesigner"
|
|
version = "0.1.0-SNAPSHOT"
|
|
repositories {
|
|
mavenLocal { content { includeGroup("de.neitzel.fxdesigner") } }
|
|
mavenCentral()
|
|
intellijPlatform { defaultRepositories() }
|
|
}
|
|
java { sourceCompatibility = JavaVersion.VERSION_25; targetCompatibility = JavaVersion.VERSION_25 }
|
|
tasks.withType<JavaCompile>().configureEach { options.release.set(25) }
|
|
val fxPlatform = if (System.getProperty("os.arch") == "aarch64") "mac-aarch64" else "mac"
|
|
dependencies {
|
|
implementation("de.neitzel.fxdesigner:designer-kit-ui:0.1.0-SNAPSHOT")
|
|
intellijPlatform {
|
|
local(providers.gradleProperty("ideaHome").orElse(providers.environmentVariable("IDEA_HOME")))
|
|
testFramework(TestFrameworkType.Platform)
|
|
bundledPlugin("com.intellij.problemsView")
|
|
}
|
|
// Maven platform profiles are not selected by Gradle: include the qualified macOS natives explicitly.
|
|
listOf("base", "controls", "fxml", "graphics", "media", "swing", "web").forEach {
|
|
implementation("org.openjfx:javafx-$it:26:$fxPlatform")
|
|
}
|
|
testImplementation("junit:junit:4.13.2")
|
|
testImplementation("de.neitzel.fxdesigner:designer-core:0.1.0-SNAPSHOT:tests")
|
|
}
|
|
intellijPlatform {
|
|
pluginConfiguration {
|
|
name = "Neitzel FX Designer"
|
|
ideaVersion { sinceBuild = "263.7307.200"; untilBuild = "263.*" }
|
|
}
|
|
instrumentCode = false
|
|
}
|
|
tasks.test { useJUnit(); jvmArgs("-Djava.awt.headless=true") }
|
|
|
|
tasks.test {
|
|
listOf("designer.workflow.fixtures", "designer.repository", "designer.target.java").forEach { key ->
|
|
providers.systemProperty(key).orNull?.let { systemProperty(key, it) }
|
|
}
|
|
}
|