plugins {
    // Apply the application plugin to add support for building a CLI application in Java.
    id 'application'
    id "org.jetbrains.kotlin.jvm" version "1.7.21"
    id "org.openjfx.javafxplugin" version "0.0.13"
    id "com.github.johnrengelman.shadow" version "7.1.2"
}

repositories {
    // Use Maven Central for resolving dependencies.
    mavenCentral()
}

dependencies {
    implementation 'com.google.guava:guava:31.1-jre'

    // https://mvnrepository.com/artifact/net.sourceforge.argparse4j/argparse4j
    implementation 'net.sourceforge.argparse4j:argparse4j:0.9.0'
}

javafx {
    version = "11.0.2"
    modules = ['javafx.controls', 'javafx.graphics']
}

testing {
    suites {
        // Configure the built-in test suite
        test {
            // Use JUnit4 test framework
            useJUnit('4.13.2')
        }
    }
}

compileKotlin {
    kotlinOptions.jvmTarget = "11"
}

compileTestKotlin {
    kotlinOptions.jvmTarget = "11"
}

application {
    // Define the main class for the application.
    mainClass = 'Mars'
}
