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

Apple M2架构下ScalaZ3运行遇架构冲突,如何让IntelliJ通过Rosetta运行?

解决方案:让IntelliJ以x86模式运行Scala+Z3项目

以下是针对Apple M2架构设备上问题的可行方案:

1. 强制IntelliJ通过Rosetta以x86_64架构启动

如果之前尝试设置"使用Rosetta打开"未成功,按以下步骤操作:

  • 找到应用程序中的IntelliJ IDEA图标,右键选择获取信息
  • 勾选使用Rosetta打开选项,完全退出并重启IntelliJ
  • 若仍无效,可通过终端命令强制以x86架构启动:
    arch -x86_64 /Applications/IntelliJ\ IDEA.app/Contents/MacOS/idea
    

2. 单独配置sbt Runner使用x86架构

无需切换整个IntelliJ的架构,仅让sbt以x86模式运行:

  • 创建一个名为x86-sbt的脚本,内容如下:
    #!/bin/bash
    arch -x86_64 /usr/local/bin/sbt "$@"
    
  • 给脚本添加执行权限:
    chmod +x x86-sbt
    
  • 在IntelliJ中打开Settings/Preferences → Build, Execution, Deployment → Build Tools → sbt
  • 在Launcher部分,选择Custom并指向刚刚创建的x86-sbt脚本路径

3. 匹配x86版本的JDK

确保项目使用的JDK为x86_64架构:

  • 下载并安装x86版本的JDK(如Adoptium提供的x86_64 OpenJDK)
  • 在IntelliJ中打开Project Structure → SDKs,添加并设置该x86 JDK为项目SDK
  • 在sbt配置中,指定使用该x86 JDK运行项目

4. 确认Z3依赖的架构一致性

  • 确保项目依赖的Z3动态库为x86_64版本,避免IntelliJ自动加载arm64版本
  • 在build.sbt中明确指定x86架构的Z3依赖,或手动将x86的Z3库添加到项目的libraryDependencies中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 02:37:10