Android Studio在构建项目时抛出错误。错误是:原因:错误=86,可执行文件中的CPU类型错误。
详细信息错误:
可执行文件中的CPU类型错误-->无法运行命令xxx/aapt
ndasle7k1#
ADB不支持ARM,需要Rosetta才能运行。我通过installing Rosetta解决了这个问题。打开终端并运行以下命令:
Rosetta
softwareupdate --install-rosetta
r8xiu3jd2#
最后我通过一点改变解决了这个问题。后藤错误模块并将buildToolsVersion更改为build.gradle文件中的另一个(更大的版本)。再次重建,错误消失。
hfsqlsce3#
我通过安装rosetta修复了这个错误。尝试在您的终端中运行此命令softwareupdate --install-rosetta
guykilcj4#
如果你用mac m1首先,打开终端后复制粘贴这个命令
然后按a
a11xaf1n5#
升级buildToolsVersion对我来说不起作用,但升级gradle版本后,错误消失了。
buildscript { repositories { jcenter() google() <--don't forget to add this } dependencies { classpath 'com.android.tools.build:gradle:3.5.3' <--upgrade here }
sgtfey8w6#
以下为 Mac M1用户正常工作(如果安装了ARM版本的Android Studio--> android-studio-2021.x.x.xx-mac_arm.dmg):打开终端并安装rosetta:
按a,然后按回车键。现在重建或同步您的项目。它会顺利工作。
vwkv1x7d7#
我不是100%确定,但似乎更新AGP到7.1.0解决了这个问题。
hts6caw38#
Android Studio内置了兼容Java的M1 ARM64架构的安装程序:Android Studio -> Preferences -> Gradle -> Gradle JDK -> Download JDK...
Android Studio -> Preferences -> Gradle -> Gradle JDK -> Download JDK...
您可以随意选择任何带有aarch64标签的内容。比如说阿苏尔之后,运行./gradlew clean,看看你的项目是否使用了新的ARM支持的JDK。但是,对于某些情况(如adb),您需要安装rosetta。其他事情,比如直接通过ARM构建项目,而不需要二进制翻译器。
aarch64
./gradlew clean
adb
w1e3prcc9#
我的问题正好相反。我的Mac是在英特尔芯片上,但看起来我已经下载并指向JDK 17,这是为M1芯片。我不得不转到Android Studio -> Preferences -> Gradle -> Gradle JDK并选择了一个嵌入式JDK。
Android Studio -> Preferences -> Gradle -> Gradle JDK
9条答案
按热度按时间ndasle7k1#
ADB不支持ARM,需要
Rosetta
才能运行。我通过installing Rosetta解决了这个问题。打开终端并运行以下命令:r8xiu3jd2#
最后我通过一点改变解决了这个问题。
后藤错误模块并将buildToolsVersion更改为build.gradle文件中的另一个(更大的版本)。
再次重建,错误消失。
hfsqlsce3#
我通过安装rosetta修复了这个错误。尝试在您的终端中运行此命令
softwareupdate --install-rosetta
guykilcj4#
如果你用mac m1
首先,打开终端后复制粘贴这个命令
然后按a
a11xaf1n5#
升级buildToolsVersion对我来说不起作用,但升级gradle版本后,错误消失了。
sgtfey8w6#
以下为 Mac M1用户正常工作(如果安装了ARM版本的Android Studio--> android-studio-2021.x.x.xx-mac_arm.dmg):
打开终端并安装rosetta:
按a,然后按回车键。
现在重建或同步您的项目。它会顺利工作。
vwkv1x7d7#
我不是100%确定,但似乎更新AGP到7.1.0解决了这个问题。
hts6caw38#
Android Studio内置了兼容Java的M1 ARM64架构的安装程序:
Android Studio -> Preferences -> Gradle -> Gradle JDK -> Download JDK...
您可以随意选择任何带有
aarch64
标签的内容。比如说阿苏尔之后,运行
./gradlew clean
,看看你的项目是否使用了新的ARM支持的JDK。但是,对于某些情况(如
adb
),您需要安装rosetta。其他事情,比如直接通过ARM构建项目,而不需要二进制翻译器。w1e3prcc9#
我的问题正好相反。我的Mac是在英特尔芯片上,但看起来我已经下载并指向JDK 17,这是为M1芯片。我不得不转到
Android Studio -> Preferences -> Gradle -> Gradle JDK
并选择了一个嵌入式JDK。