2024-05-11 12:37:09 +02:00
/*
* This file was generated by the Gradle 'init' task.
*
* This generated file contains a sample Java application project to get you started.
* For more details on building Java & JVM projects, please refer to https://docs.gradle.org/8.4/userguide/building_java_projects.html in the Gradle documentation.
*/
2024-05-11 14:02:05 +02:00
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2024-05-11 12:37:09 +02:00
plugins {
// Apply the application plugin to add support for building a CLI application in Java.
application
2024-05-11 14:02:05 +02:00
id("com.github.johnrengelman.shadow") version "8.1.1"
2024-05-11 12:37:09 +02:00
}
repositories {
// Use Maven Central for resolving dependencies.
mavenCentral()
}
dependencies {
// Use JUnit Jupiter for testing.
testImplementation("org.junit.jupiter:junit-jupiter:5.9.3")
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
// This dependency is used by the application.
implementation("com.google.guava:guava:32.1.1-jre")
}
// Apply a specific Java toolchain to ease working on different environments.
java {
toolchain {
2024-05-11 13:31:38 +02:00
languageVersion.set(JavaLanguageVersion.of(17))
2024-05-11 12:37:09 +02:00
}
}
application {
// Define the main class for the application.
2024-05-11 13:31:38 +02:00
mainClass.set("gui.XL")
2024-05-11 12:37:09 +02:00
}
tasks.named<Test>("test") {
// Use JUnit Platform for unit tests.
useJUnitPlatform()
}
2024-05-11 14:02:05 +02:00
tasks.withType<ShadowJar> {
archiveBaseName.set("xl")
archiveVersion.set("")
manifest {
attributes(mapOf("Main-Class" to "com.github.csolem.gradle.shadow.kotlin.example.App"))
}
2024-05-11 14:06:58 +02:00
}
// Set build to depend on shadowJar
tasks.named("build") {
dependsOn("shadowJar")
2024-05-11 14:02:05 +02:00
}