我正在使用 Maven 构建我的 JavaFX 应用程序,如下所示:
pom.xml中定义的依赖项:
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>${javafx.version}</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
Maven 构建命令:
mvn package -Djavafx.platform=mac
Run Code Online (Sandbox Code Playgroud)
这设置了跨平台构建时的平台限定符。以下 Maven 分类器可用:
win,mac,linux
Run Code Online (Sandbox Code Playgroud)
(参见https://openjfx.io/openjfx-docs/ “跨平台”)
现在,如果我使用 mac 分类器进行构建,然后尝试使用 aarch64 JRE 执行,则这是行不通的。显然,mac 分类器指定了不适合 aarch64 JRE 的 mac x64 架构。
我可以以某种方式指定 mac 的 aarch64 依赖版本吗?
这个问题没有回答类似的问题,但它现在有点过时了,因为从 JavaFX 17 开始添加了 macOS AArch64 支持。
在 JavaFX 17 之前,javafx.pom 父 pom包含以下 Maven 配置文件:
linux和javafx.platform=linuxmacosx和javafx.platform=macwindows和javafx.platform=winjavafx.platform.custom文件javafx.platform=${javafx.platform}随着新架构的支持,并从 JavaFX 17 开始,父 pom包含以下 Maven 配置文件:
linux-x86_64与javafx.platform=linux或javafx.platform=linux-monoclelinux-aarch64与javafx.platform=linux-aarch64或javafx.platform=linux-aarch64-monoclelinux-arm32和javafx.platform=linux-arm32-monoclemacosx-x86_64与javafx.platform=mac或javafx.platform=mac-monoclemacosx-aarch64与javafx.platform=mac-aarch64或javafx.platform=mac-aarch64-monoclewindows-x86_64与javafx.platform=win或javafx.platform=win-monoclewindows-x86与javafx.platform=win-x86或javafx.platform=win-x86-monoclejavafx.platform.custom文件javafx.platform=${javafx.platform}因此,如果您想要进行仅包含 macOS AArch64 依赖项的跨平台构建,您只需要:
mvn package -Djavafx.platform=mac-aarch64
Run Code Online (Sandbox Code Playgroud)
当然,这仅适用于 Gluon 发布到 Maven Center 的 JavaFX 工件,不适用于其他发行版(JavaFX SDK 或捆绑在 Java SDK 中)。
注意:这些配置文件有一个替代方案,如果您在 pom 中monocle包含一个属性,则可以激活该替代方案:javafx.monocle
<javafx.monocle>true</javafx.monocle>
Run Code Online (Sandbox Code Playgroud)
这允许使用带或不带monocle的 JavaFX 工件(嵌入式系统 JavaFX 的 Glass 窗口组件的实现),就像从https://gluonhq.com/products/javafx/下载 SDK 一样。例如,如果您在没有 Windows 管理器的情况下在 Raspberry Pi 的命令行上运行,这非常有用。
| 归档时间: |
|
| 查看次数: |
524 次 |
| 最近记录: |