使用 OpenJDK 10 和 OpenJFX 的 MacOS X 上的 JavaFX 中的 HeadlessException

Har*_*own 3 java macos javafx openjfx

我收到错误

java.awt.HeadlessException: null
    at java.desktop/java.awt.Desktop.getDesktop(Desktop.java:306) ~[na:na]
Run Code Online (Sandbox Code Playgroud)

打电话时

Desktop.getDesktop().open(pdfFile);
Run Code Online (Sandbox Code Playgroud)

我正在使用此版本的 OpenJDK

java 10.0.2 2018-07-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)
Run Code Online (Sandbox Code Playgroud)

和 OpenJFXjavafx-sdk-11MacOS 10.14.2.

为什么 JVM 在 MacOS 上以无头模式运行?如何在没有无头模式的情况下运行它?

Har*_*own 5

该问题不是由 OpenJDK、OpenJFX 或 MacOS X 引起的,而是由 Spring Boot 引起的。

默认情况下,Spring Boot 应用程序以无头模式运行。以下是禁用此功能的方法: