/* Gradle Groovy Build Script */ plugins { // Apply the java plugin. id 'application' id("io.freefair.aspectj") version "9.2.0" id("org.openjfx.javafxplugin") version "0.1.0" } java { toolchain { languageVersion = JavaLanguageVersion.of(25) } } group = 'edu.addressbook' version = '1.0' application { mainClass = 'edu.addressbook.api.App' } repositories { // Use Maven Central for resolving dependencies. mavenCentral() } javafx { version = "25.0.1" modules = [ 'javafx.controls', 'javafx.fxml', 'javafx.graphics', 'javafx.web' ] } dependencies { implementation("org.slf4j:slf4j-api:2.0.17") implementation("ch.qos.logback:logback-classic:1.5.26") implementation("org.aspectj:aspectjrt:1.9.25") implementation 'org.xerial:sqlite-jdbc:3.51.2.0' implementation 'jakarta.activation:jakarta.activation-api:2.1.4' } jar { manifest { attributes 'Automatic-Module-Name': group, 'Main-Class': application.mainClass, 'Class-Path': 'edu.addressbook org.aspectj.runtime .' } duplicatesStrategy = DuplicatesStrategy.EXCLUDE from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } } tasks.named('jar') { manifest { attributes( 'Automatic-Module-Name':group, 'Implementation-Title': group, 'Implementation-Version': 1.0, 'Main-Class': application.mainClass, 'Class-Path': 'edu.addressbook org.aspectj.runtime .' ) } }