plugins { id 'bisq.application' id 'bisq.javafx' id 'bisq.gradle.app_start_plugin.AppStartPlugin' id 'bisq.gradle.packaging.PackagingPlugin' alias(libs.plugins.gradle.javacpp.platform) } application { mainClass = 'bisq.desktop.app.BisqAppMain' applicationDefaultJvmArgs = ['-XX:MaxRAM=8g', '-Xss1280k', '-XX:+UseG1GC', '-XX:MaxHeapFreeRatio=10', '-XX:MinHeapFreeRatio=5', '-XX:+UseStringDeduplication', '-Djava.net.preferIPv4Stack=true'] } javafx { modules = ['javafx.controls', 'javafx.fxml'] } mainClassName = 'bisq.desktop.app.BisqAppMain' sourceSets.main.resources.srcDirs += ['src/main/java'] // to copy fxml and css files dependencies { implementation enforcedPlatform(project(':platform')) implementation project(':assets') implementation project(':common') implementation project(':proto') implementation project(':p2p') implementation project(':core') annotationProcessor libs.lombok compileOnly libs.lombok implementation libs.logback.classic implementation libs.logback.core implementation libs.google.gson implementation libs.google.guava implementation libs.jcsv implementation libs.jfoenix implementation libs.commons.io implementation libs.fontawesomefx implementation libs.fontawesomefx.commons implementation libs.fontawesomefx.materialdesign.font implementation libs.qrgen implementation (libs.javacv) { exclude(module: 'ffmpeg-platform') exclude(module: 'flycapture-platform') exclude(module: 'spinnaker-platform') exclude(module: 'libdc1394-platform') exclude(module: 'libfreenect-platform') exclude(module: 'libfreenect2-platform') exclude(module: 'librealsense-platform') exclude(module: 'librealsense2-platform') exclude(module: 'videoinput-platform') exclude(module: 'artoolkitplus-platform') exclude(module: 'chilitags-platform') exclude(module: 'flandmark-platform') exclude(module: 'arrow-platform') exclude(module: 'hdf5-platform') exclude(module: 'hyperscan-platform') exclude(module: 'lz4-platform') exclude(module: 'mkl-platform') exclude(module: 'mkl-dnn-platform') exclude(module: 'dnnl-platform') exclude(module: 'arpack-ng-platform') exclude(module: 'cminpack-platform') exclude(module: 'fftw-platform') exclude(module: 'gsl-platform') exclude(module: 'cpython-platform') exclude(module: 'numpy-platform') exclude(module: 'scipy-platform') exclude(module: 'gym-platform') exclude(module: 'llvm-platform') exclude(module: 'libffi-platform') exclude(module: 'libpostal-platform') exclude(module: 'libraw-platform') exclude(module: 'leptonica-platform') exclude(module: 'tesseract-platform') exclude(module: 'caffe-platform') exclude(module: 'openpose-platform') exclude(module: 'cuda-platform') exclude(module: 'nvcodec-platform') exclude(module: 'opencl-platform') exclude(module: 'mxnet-platform') exclude(module: 'pytorch-platform') exclude(module: 'sentencepiece-platform') exclude(module: 'tensorflow-platform') exclude(module: 'tensorflow-lite-platform') exclude(module: 'tensorrt-platform') exclude(module: 'tritonserver-platform') exclude(module: 'ale-platform') exclude(module: 'depthai-platform') exclude(module: 'onnx-platform') exclude(module: 'ngraph-platform') exclude(module: 'onnxruntime-platform') exclude(module: 'tvm-platform') exclude(module: 'bullet-platform') exclude(module: 'liquidfun-platform') exclude(module: 'qt-platform') exclude(module: 'skia-platform') exclude(module: 'cpu_features-platform') exclude(module: 'modsecurity-platform') exclude(module: 'systems-platform') } implementation libs.apache.commons.lang3 implementation libs.bouncycastle.bcpg.jdk15on implementation libs.fxmisc.easybind implementation libs.jetbrains.annotations implementation libs.slf4j.api implementation(libs.bitcoinj) { exclude(module: 'bcprov-jdk15on') exclude(module: 'guava') exclude(module: 'jsr305') exclude(module: 'okhttp') exclude(module: 'okio') exclude(module: 'slf4j-api') } implementation(libs.google.guice) { exclude(module: 'guava') } testAnnotationProcessor libs.lombok testCompileOnly libs.lombok testImplementation libs.natpryce.make.it.easy } test { systemProperty 'jdk.attach.allowAttachSelf', true }