找不到JavaFX Packager工具

时间:2018-03-03 12:34:22

标签: javafx kotlin tornadofx

我正在尝试使用Gradle创建JavaFX项目。这是build.gradle

buildscript {
    ext.kotlin_version = '1.2.30'

    repositories {
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

apply plugin: "kotlin"
apply from: "http://dl.bintray.com/content/shemnon/javafx-gradle/8.1.1/javafx.plugin"

repositories {
    mavenCentral()
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
    compile "org.jetbrains.kotlin:kotlin-reflect"
    testCompile "org.jetbrains.kotlin:kotlin-test"
    testCompile "org.jetbrains.kotlin:kotlin-test-junit"

    compile "no.tornado:tornadofx:1.7.15"
}

kotlin {
    experimental {
        coroutines 'enable'
    }
}

compileKotlin {
    kotlinOptions.jvmTarget = 1.8
}

但是我得到"Error:Could not find JavaFX Packager Tools, please set one of [jfxrtDir in Gradle Properties, JFXRT_HOME in System Environment, JAVA_HOME in System Environment, java.home in JVM properties]"。我已经设置了Java家,它没有改变任何东西。请帮帮我。

1 个答案:

答案 0 :(得分:0)

最后我发现了问题和解决方案。为了编译这个项目,我使用Android Studio,它默认捆绑了JDK。嵌入式JDK似乎不包含JavaFX,因此我将其更改为系统默认JDK。

  1. 查找默认的Java主目录
    • 对于Mac:运行/usr/libexec/java_home
  2. 将Android Studio JDK设置为该值
    • 转到文件> 项目结构
    • 点击 SDK位置
    • 取消选中使用嵌入式JDK(推荐)
    • 使用系统默认Java home填充文本框,例如/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home
  3. 不幸的是,此设置会影响所有项目,而不是特定(当前打开的)项目。