You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacBook(Apple M2)上VSCode无法运行JavaFX的问题求助

解决M2 MacBook上VSCode运行JavaFX的架构不兼容问题

问题诊断

报错 (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) 说明运行环境中存在架构不匹配的组件——要么是Java SDK为x86_64版本,要么是JavaFX库为x86_64版本,与M2的arm64架构冲突。

分步解决方案

1. 确认当前Java SDK的架构

打开终端执行:

java -version

查看输出:若包含x86_64,说明你安装的是Intel架构的Java;若包含aarch64/arm64,则是适配M2的版本。

2. 安装/切换到ARM64版本的Java SDK

如果当前Java是x86_64版本,先卸载现有Java:

brew uninstall openjdk

确认你的Homebrew是ARM64版本(M2 Mac默认Homebrew路径应为/opt/homebrew,若你的是/usr/local,说明是x86版本,需重新安装ARM64 Homebrew),再重装Java:

brew install openjdk

安装完成后再次执行java -version,确认架构为arm64/aarch64。

3. 匹配ARM64版本的JavaFX

JavaFX官方提供ARM64版本的库,可通过以下方式获取:

  • Maven引入:在pom.xml中为JavaFX模块指定mac-aarch64分类器:
<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-controls</artifactId>
    <version>21.0.1</version>
    <classifier>mac-aarch64</classifier>
</dependency>
<!-- 其他JavaFX模块(如javafx-fxml)按此格式添加 -->
  • 手动下载:选择对应Java版本的mac-aarch64压缩包,解压后将lib目录配置到VSCode的Java项目依赖中。

4. 配置VSCode使用正确的Java环境

打开VSCode设置,搜索java.home,确认路径指向/opt/homebrew/opt/openjdk/libexec/openjdk.jdk/Contents/Home(ARM64 Homebrew安装的Java默认路径),避免VSCode误选x86版本的Java。

内容的提问来源于stack exchange,提问作者zcant_code

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 16:59:52