我在 Apple M2 架构上使用 Z3 运行 Scala 项目,我遇到了以下问题:
如果我从 IntellIJ 运行项目,我得到错误:
(mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64'))
,这是有道理的,因为 Z3 依赖于 x86 dlib 文件。
但是,如果我运行
sbt run
项目会无缝运行,因为终端将 sbt 识别为 x86 应用程序并通过 rosetta 运行它。
我试图在我的新机器上从源代码重新编译 dlib,但它们仍然是 x86。我也曾尝试将 Intellij 作为 x86 运行,但没有成功。
有没有办法告诉 IntellIJ 在 rosetta 下运行我的项目(作为 x86?)
任何建议将不胜感激!
下载一个x64的JDK,用它编译工程,奇迹般的解决了。 JDK 实际上强制机器通过 rosetta 运行 java。