plugins { id 'java' id 'application' id 'org.javamodularity.moduleplugin' version '1.8.12' id 'org.openjfx.javafxplugin' version '0.0.13' id 'org.beryx.jlink' version '2.25.0' } group 'org.to' version '1.0-SNAPSHOT' repositories { mavenCentral() } ext { junitVersion = '5.10.2' } sourceCompatibility = '23' targetCompatibility = '23' tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } application { mainModule = 'org.to.telegramfinalproject' mainClass = 'org.to.telegramfinalproject.HelloApplication' } javafx { version = '17.0.6' modules = ['javafx.controls', 'javafx.fxml', 'javafx.web', 'javafx.swing' , 'javafx.media'] } dependencies { // JavaFX UI Libraries implementation 'org.controlsfx:controlsfx:11.2.1' implementation('com.dlsc.formsfx:formsfx-core:11.6.0') { exclude group: 'org.openjfx' } implementation 'org.postgresql:postgresql:42.7.3' implementation('net.synedra:validatorfx:0.5.0') { exclude group: 'org.openjfx' } implementation 'org.json:json:20231013' implementation 'org.kordamp.ikonli:ikonli-javafx:12.3.1' implementation 'org.kordamp.bootstrapfx:bootstrapfx-core:0.4.0' implementation('eu.hansolo:tilesfx:21.0.3') { exclude group: 'org.openjfx' } test { useJUnitPlatform() } jlink { imageZip = project.file("${buildDir}/distributions/app-${javafx.platform.classifier}.zip") options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages'] launcher { name = 'app' } } jlinkZip { group = 'distribution' } }