/* * This file was generated by the Gradle 'init' task. * * This generated file contains a sample Kotlin application project to get you started. * For more details take a look at the 'Building Java & JVM projects' chapter in the Gradle * User Manual available at https://docs.gradle.org/8.0.2/userguide/building_java_projects.html */ plugins { // Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin. id 'org.jetbrains.kotlin.jvm' version '1.8.0' // Apply the application plugin to add support for building a CLI application in Java. id 'application' id 'org.openjfx.javafxplugin' version '0.0.13' id 'distribution' } repositories { // Use Maven Central for resolving dependencies. mavenCentral() } dependencies { // Use the Kotlin JUnit 5 integration. testImplementation 'org.jetbrains.kotlin:kotlin-test-junit5' // Use the JUnit 5 integration. testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.9.1' // This dependency is used by the application. implementation 'com.google.guava:guava:31.1-jre' // Coroutines core implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.0" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-javafx:1.7.0" // Archiver implementation "org.rauschig:jarchivelib:1.2.0" } application { // Define the main class for the application. mainClass = 'xyz.brysonsteck.servercraft.MainKt' } distTar { compression = Compression.GZIP archiveFileName = 'ServerCraft.tar.gz' } distZip { archiveFileName = 'ServerCraft.zip' } jar { archiveFileName = 'ServerCraft.jar' manifest { attributes 'Main-Class': application.mainClass } duplicatesStrategy = DuplicatesStrategy.INCLUDE from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } } tasks.named('test') { // Use JUnit Platform for unit tests. useJUnitPlatform() } javafx { version = "20" modules = ['javafx.controls', 'javafx.fxml', 'javafx.graphics'] }