plugins { id 'java-library' id 'kotlin' id 'org.jetbrains.kotlin.plugin.serialization' version "$kotlinVersion" } java.targetCompatibility = JavaVersion.VERSION_17 java.sourceCompatibility = JavaVersion.VERSION_1_8 sourceSets.main.java.srcDirs = ["src/"] sourceSets.main.resources.srcDirs = ["../android/assets"] project.ext.mainClassName = "ru.deadsoftware.cavedroid.desktop.DesktopLauncher" project.ext.assetsDir = new File("../android/assets") task run(dependsOn: build, type: JavaExec) { main = project.mainClassName classpath = sourceSets.main.runtimeClasspath standardInput = System.in workingDir = project.assetsDir ignoreExitValue = true as JavaExecSpec args "--debug" } task runTouch(dependsOn: build, type: JavaExec) { main = project.mainClassName classpath = sourceSets.main.runtimeClasspath standardInput = System.in workingDir = project.assetsDir ignoreExitValue = true as JavaExecSpec args "--touch", "--debug" } task dist(dependsOn: build, type: Jar) { duplicatesStrategy = DuplicatesStrategy.EXCLUDE manifest { attributes 'Main-Class': project.mainClassName } from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } with jar } dependencies { implementation project(":core") implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlinSerializationVersion" api "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion" api "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" }