gpt4 book ai didi

Apple Silicon/UnsatisfiedLinkError : Can't load library: libprism_es2. dylib 上的 JavaFx

转载 作者:行者123 更新时间:2023-12-05 09:26:43 31 4
gpt4 key购买 nike

我正在尝试在带有 Apple Silicon 芯片的 MacOS 系统上使用 Maven、gradle、sbt 或类似工具构建 JavaFx 项目,但我遇到了类似这样的错误:

UnsatisfiedLinkError: Can't load library: libprism_es2.dylib

怎么办?

最佳答案

JavaFx does support Apple Silicon (aarch64) architecture starting from version 17-ea+8 .

但是您需要使用操作系统和架构的分类器来限定依赖关系。

对于 Maven,依赖关系应该是这样的:

<!-- ... -->
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>18.0.2</version>
<classifier>mac-aarch64</classifier>
</dependency>
<!-- ... -->

在 gradle 中,JavaFx Plugin 0.0.11 或更高版本将附加正确的分类器:

plugins {
// ...
id( "org.openjfx.javafxplugin" ) version "0.0.13"
// ...
}

在 sbt 中,您可以将以下内容添加到您的 build.sbt 文件中:

lazy val myproject = ( project in file( "." ) )
.settings(
// ...
libraryDependencies ++= Seq(
//...
"org.openjfx" % "javafx-controls" % "18.0.2" classifier "mac-aarch64",
//...
)
// ...
)

使用这些构建工具中的每一个,您都可以执行复杂的操作,以便您的构建定义动态解析要应用的分类器,而不管您正在构建的平台是什么。但这留给读者作为练习。

请注意,尽管 System.getProperty( "os.name") 确实 解析为 org. openjfx 用于在其分类器中识别目标平台,System.getProperty( "os.arch") 确实解析为 Apple Silicon 计算机上的文本 aarch64 .

关于Apple Silicon/UnsatisfiedLinkError : Can't load library: libprism_es2. dylib 上的 JavaFx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73426832/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com