CrustyCookiesAPI/app/build.gradle.kts
2024-04-22 14:07:25 +02:00

64 lines
No EOL
2 KiB
Text

/*
* 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.
*/
plugins {
// Apply the application plugin to add support for building a CLI application in Java.
application
id("com.github.johnrengelman.shadow") version "8.1.1"
}
repositories {
// Use Maven Central for resolving dependencies.
mavenCentral()
}
dependencies {
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
// testImplementation("org.skyscreamer:jsonassert:1.5.0") // For JSON assertions in tests.
// testImplementation("com.mashape.unirest:unirest-java:1.4.9") // For HTTP requests in tests.
testRuntimeOnly("org.junit.platform:junit-platform-launcher:1.10.2")
// implementation("com.google.guava:guava:33.1.0-jre") // Currently not used.
implementation("com.sparkjava:spark-core:2.9.4")
implementation("com.fasterxml.jackson.core:jackson-core:2.17.0")
implementation("com.fasterxml.jackson.core:jackson-databind:2.17.0")
implementation("org.slf4j:slf4j-simple:2.0.13")
implementation("org.xerial:sqlite-jdbc:3.45.3.0")
}
// Apply a specific Java toolchain to ease working on different environments.
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(21))
}
}
application {
// Define the main class for the application.
mainClass.set("krusty.ServerMain")
}
tasks.named<Test>("test") {
// Use JUnit Platform for unit tests.
useJUnitPlatform()
}
group = "com.krusty"
version = "1.0"
description = "Krusty"
tasks.named<Jar>("jar") {
// Make the JAR executable.
manifest {
attributes(
"Main-Class" to "krusty.ServerMain",
"Implementation-Title" to "KrustyCookiesAPI",
"Implementation-Version" to version
)
}
}