在Mac上安装JavaFX 15

时间:2020-04-05 23:33:49

标签: java macos javafx javafx-11

我试图在Mac上安装JavaFX 15,但是卡住了。

运行MacOS Mojave 10.14.6

我已经安装了Java 13 JDK并设置了Home文件夹,并从https://gluonhq.com/products/javafx/下载了JavaFX SDK,我已经运行了代码“ export PATH_TO_FX = / Users /.../ javafx-sdk- 15 / lib”。

我正在使用IntelliJ进行编程,我试图在Project Structure-Libraries中设置路径

但是应用无法编译。

有人可以帮我吗?提前非常感谢!

4 个答案:

答案 0 :(得分:1)

您需要注意将环境变量与macOS上的GUI应用程序混合使用。在终端中设置PATH_TO_FX可能未设置IntelliJ IDE的值。您会注意到,https://openjfx.io/openjfx-docs/#IDE-Intellij上的说明明确提到要在IDE中(而不是从终端)设置该值。

我强烈建议将Gradle或Maven与https://OpenJFX.io/处给出的代码样本一起用作起点。在调试IDE可能会做的不同之前,请先从命令行确认构建工作正常。

您还可以安装包含JavaFX模块的JDK。一些OpenJDK提供程序具有这样的构建。例如:

答案 1 :(得分:1)

DomQ 发布的第二条命令不正确:

brew tap bell-sw/liberica

brew install --cask liberica-jdk15-full

答案 2 :(得分:0)

我的经验是homebrew-liberica可以正常工作:

brew tap bell-sw/liberica
brew cask install liberica-jdk15-full

答案 3 :(得分:0)

从Gluon(或 Early-Access版本)下载the latest JavaFX。要编译*.java文件,请确保在CLI上指定并设置--module-path-cp作为javac的命令参数。

对于example,如果您将JavaFX SDK下载到~/Downloads目录(即,您下载了JavaFX 16并将其提取到普通的 Downloads 文件夹中),则您将运行类似

javac --module-path "$(eval echo ~$USER)/Downloads/javafx-sdk-16/lib/*" -cp "$(eval echo ~$USER)/Downloads/javafx-sdk-16/lib/*" -d . JavaFXThing.java

然后,为了运行程序,您将使用:

java --module-path "$(eval echo ~$USER)/Downloads/javafx-sdk-16/lib"  --add-modules javafx.controls,javafx.fxml JavaFXThing 

在此处检查需要为--add-modules参数指定哪些模块:API documentation for JavaFX 15

对于JDK,我建议将AdoptOpenJDK与Homebrew一起使用,因为它很容易保持最新(是,Homebrew!?),并且Adopt会注意路径和环境变量。要在外壳中安装,请尝试:

brew cask install adoptopenjdk

然后更新

brew update && brew cask upgrade