1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- import org.apache.tools.ant.taskdefs.condition.Os
- plugins {
- id 'application'
- id 'org.beryx.jlink' version "$jlink"
- }
- repositories {
- mavenCentral()
- flatDir {
- dirs "${project(':demo').projectDir}/libs"
- }
- }
- dependencies {
- testImplementation "org.testfx:testfx-core:$testfx"
- testImplementation "org.testfx:testfx-junit5:$testfx"
- testImplementation "org.junit.jupiter:junit-jupiter-api:$junit"
- testImplementation "org.junit.platform:junit-platform-suite-api:$junitSuite"
- testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junit"
- implementation "io.github.palexdev:scenicview:$scenicView"
- implementation("fr.brouillard.oss:cssfx:$cssfx") { exclude group: 'org.openjfx' }
- implementation "org.kordamp.ikonli:ikonli-core:$ikonli"
- implementation "org.kordamp.ikonli:ikonli-javafx:$ikonli"
- implementation "org.kordamp.ikonli:ikonli-fontawesome5-pack:$ikonli"
- implementation "io.github.palexdev:virtualizedfx:$vfx"
- implementation project(':materialfx')
- }
- compileTestJava {
- moduleOptions {
- compileOnClasspath = true
- }
- }
- test {
- useJUnitPlatform()
- moduleOptions {
- runOnClasspath = true
- }
- }
- application {
- setMainModule("MaterialFX.Demo")
- String main = project.findProperty("chooseMain").toString()
- if (main != "null" && !main.trim().isEmpty()) {
- setMainClassName(main)
- } else {
- setMainClassName("io.github.palexdev.materialfx.demo.Demo")
- }
- }
- jlink {
- options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages']
- launcher {
- mainClass = "io.github.palexdev.materialfx.demo.Demo"
- name = 'MaterialFX Demo'
- }
- jpackage {
- imageOptions = ['--icon', 'src/main/resources/logo.ico']
- }
- targetPlatform("linux-x64") {
- jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-linux_x64.tar.gz")
- addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/linux_x64")
- }
- targetPlatform("win") {
- jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-win_x64.zip")
- addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/win_x64")
- }
- targetPlatform("mac") {
- jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-macosx_x64.tar.gz")
- addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/mac_x64")
- }
- addExtraDependencies('javafx')
- }
- tasks.register('doPackageAll') {
- doLast {
- if (Os.isFamily(Os.FAMILY_UNIX)) {
- exec {
- executable "$projectDir/scripts/JLinkPackage.sh"
- args = ["$buildDir"]
- }
- }
- }
- }
- jlinkZip.doLast {
- doPackageAll
- }
|