Files
addressbook/edu.addressbook/build.gradle
T
2026-02-10 16:18:30 -05:00

69 lines
1.7 KiB
Groovy

/*
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.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.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'
}
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':'edu.addressbook',
'Implementation-Title': 'edu.addressbook',
'Implementation-Version': 1.0,
'Main-Class': 'edu.addressbook.App',
'Class-Path': 'edu.addressbook org.aspectj.runtime' )
}
}