build.gradle 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. plugins {
  2. id 'application'
  3. id 'org.beryx.jlink' version '2.25.0'
  4. }
  5. repositories {
  6. mavenCentral()
  7. flatDir {
  8. dirs "${project(':demo').projectDir}/libs"
  9. }
  10. }
  11. dependencies {
  12. testImplementation "org.testfx:testfx-core:4.0.16-alpha"
  13. testImplementation "org.testfx:testfx-junit5:4.0.16-alpha"
  14. testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
  15. testImplementation 'org.junit.platform:junit-platform-suite-api:1.8.1'
  16. testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
  17. implementation name: 'scenicview'
  18. implementation "fr.brouillard.oss:cssfx:11.4.0"
  19. implementation 'org.kordamp.ikonli:ikonli-core:12.2.0'
  20. implementation 'org.kordamp.ikonli:ikonli-javafx:12.2.0'
  21. implementation 'org.kordamp.ikonli:ikonli-fontawesome5-pack:12.2.0'
  22. implementation 'io.github.palexdev:virtualizedfx:11.2.5'
  23. implementation project(':materialfx')
  24. }
  25. application {
  26. setMainModule("MaterialFX.Demo")
  27. String main = project.findProperty("chooseMain").toString()
  28. if (main != "null" && !main.trim().isEmpty()) {
  29. setMainClassName(main)
  30. } else {
  31. setMainClassName("io.github.palexdev.materialfx.demo.Demo")
  32. }
  33. }
  34. jlink {
  35. options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages']
  36. launcher {
  37. mainClass = "io.github.palexdev.materialfx.demo.Demo"
  38. name = 'MaterialFX Demo'
  39. }
  40. jpackage {
  41. imageOptions = ['--icon', 'src/main/resources/logo.ico']
  42. }
  43. targetPlatform("linux-x64") {
  44. jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-linux_x64.tar.gz")
  45. addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/linux_x64")
  46. }
  47. targetPlatform("win") {
  48. jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-win_x64.zip")
  49. addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/win_x64")
  50. }
  51. targetPlatform("mac") {
  52. jdkHome = jdkDownload("https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-jdk17.0.2-macosx_x64.tar.gz")
  53. addExtraModulePath("/home/palexdev/Documents/JavaFX_jmods/mac_x64")
  54. }
  55. }
  56. compileTestJava {
  57. moduleOptions {
  58. compileOnClasspath = true
  59. }
  60. }
  61. test {
  62. useJUnitPlatform()
  63. moduleOptions {
  64. runOnClasspath = true
  65. }
  66. }