我在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。我也试着以x86运行Intellij,但没有成功。
有什么方法可以告诉IntellIJ在rosetta下运行我的项目(作为x86?)
任何建议将不胜感激!
1条答案
按热度按时间umuewwlo1#
通过下载一个x64 JDK并使用它来编译项目,这个问题奇迹般地得到了解决。JDK实际上迫使机器通过rosetta运行java。