/* * Gradle 'init' task. * */ plugins { id 'application' id("org.openjfx.javafxplugin") version "0.1.0" } java { modularity.inferModulePath = true toolchain { languageVersion = JavaLanguageVersion.of(25) } } group = 'edu.addressbook' version = '1.0' repositories { // Use Maven Central for resolving dependencies. mavenCentral() } application { mainClass = 'edu.addressbook.view.ApplicationView' } 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.openjfx:javafx-base:25.0.1' implementation 'org.openjfx:javafx-fxml:25.0.1' implementation 'org.openjfx:javafx-controls:25.0.1' implementation 'org.openjfx:javafx-graphics:25.0.1' implementation 'org.openjfx:javafx-web:25.0.1' implementation project(':edu.addressbook') } jar { manifest { attributes 'Automatic-Module-Name': group, 'Main-Class': application.mainClass, 'Class-Path': 'edu.addressbook.view 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':'edu.addressbook', 'Implementation-Title': 'edu.addressbook', 'Implementation-Version': 1.0, 'Main-Class': application.mainClass, 'Class-Path': 'edu.addressbook org.aspectj.runtime' ) } }