Android Studio Mac全新安装-一次又一次的错误提示错误

时间:2019-07-01 11:32:35

标签: android android-studio gradle

从未真正使用过引发如此多错误的软件。我安装并得到了下面的所有错误,因此尝试重新安装以完全删除它,甚至包括SDK,但重新安装后又尝试了全新安装,但再次安装却引发了完全相同的错误。根据我的阅读,它应该在基本安装后就可以工作吗?

首次打开它的第一个错误:

unable to access android sdk add on list

即使在安装后,我也将其添加并在防火墙中批准了。

然后在安装过程中提示HAXM安装失败,并提供了一个安装链接,该页面未找到。然后,我在SDK Manager中的工具下显示了Intel x86 Emulator Accelerator (HAXM installer) 7.3.2 - Installed。据我了解,这意味着它已安装?

我正在使用MacOS High Sierra,并且应该进入系统偏好设置>安全和隐私,并选择允许该特定应用程序对其进行修复,但是由于我已经将其设置为允许任何显然不适合我的应用。

然后我添加了Flutter插件,创建了默认应用程序并启动了它,但出现错误:

* Error running Gradle:
ProcessException: Process "/Users/hasen/AndroidStudioProjects/testing_app/android/gradlew" exited abnormally:
Starting a Gradle Daemon (subsequent builds will be faster)

> Configure project :app
Checking the license for package Android SDK Build-Tools 28.0.3 in /usr/local/Cellar/android-sdk/24.4.1_1/licenses
Warning: License for package Android SDK Build-Tools 28.0.3 not accepted.
Checking the license for package Android SDK Platform 28 in /usr/local/Cellar/android-sdk/24.4.1_1/licenses
Warning: License for package Android SDK Platform 28 not accepted.

Picked up _JAVA_OPTIONS: -Xverify:none

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/hasen/AndroidStudioProjects/testing_app/android/build.gradle' line: 24

* What went wrong:
A problem occurred evaluating root project 'android'.
> A problem occurred configuring project ':app'.
   > Failed to install the following Android SDK packages as some licences have not been accepted.
        build-tools;28.0.3 Android SDK Build-Tools 28.0.3
        platforms;android-28 Android SDK Platform 28
     To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
     Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html

     Using Android SDK: /usr/local/Cellar/android-sdk/24.4.1_1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 13s
  Command: /Users/hasen/AndroidStudioProjects/testing_app/android/gradlew app:properties

Finished with error: Please review your Gradle project setup in the android/ folder.

在此错误输出中说,我需要接受SDK许可协议,但不确定如何或为什么需要这样做。我遵循的教程不需要对此做 任何 ...不确定为什么这么奇怪。

编辑:错误地标记为重复。这不是重复的,因为3年前的解决方案对我不起作用,并且我有另外两个错误,重复问题中根本没有提到。

此外,我的问题的解决方案是删除由Homebrew安装的Android SDK的第二次安装。假定的问题是“重复”的,因此未提及这些。

1 个答案:

答案 0 :(得分:1)

让我先澄清您的评论:我没有拒绝投票,但是您的措辞有很多不足之处。 Android Studio并不是我所钟爱的任何东西,它只是我缺少一种更方便的工具而使用的工具。您遇到的不是Android Studio安装问题,而是Android工具链问题。

这是怎么回事?

您的Android工具链已损坏。

该怎么办?

在这里,我将采取一些步骤来验证您的问题是从哪里来的,因为如果无法重现它就很难分辨。相反,如果遇到全新安装的macOS (或其他任何操作系统,因为我不再运行macOS)了,我将告诉您要遵循的步骤 )。

  1. 下载Android Studio from Google
  2. Android Studio附带了一些捆绑的基本内容,但是在大多数情况下,建议您使用集成 SDK管理器来填写缺少的密钥。它在第一个显示“欢迎使用Android Studio”的Android Studio欢迎弹出窗口中可用。选择底部的“配置”,然后选择“ SDK管理器”:

My SDK Manager

  1. 最上面的通知是我保存所有内容的位置;必须将其设置为ANDROID_HOME环境变量,并且其中一些文件夹必须位于您的Path中(为了更容易访问任何工具,尤其是adb命令)。因此,如果您使用BASH(macOS High Sierra的默认设置),请确保将其添加到.bashrc.bash_profile配置路径的任何地方
export ANDROID_HOME="$HOME/Android/Sdk"
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

您明白了。

  1. 不幸的是,您还需要Java ,这是macOS如今不再提供的功能。因此,您在这里有很多选择。您可以转到Java 8的Oracle's downloads并为您的环境选择合适的版本,也可以安装OpenJDK。无论如何,如果您需要查看Java的安装位置,macOS都有一个方便的工具,称为java_home。您可以详细了解in this StackOverflow post

java_home在我的Linux上不存在,但是我知道Java在哪里,并且可以看到它,因为我添加了此环境变量,这是必需的:

$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64

现在,我已经在路径中运行了Java二进制文件:

 $ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.19.04.2-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)

许可如何?

SDK管理器能够以半自动形式从命令行批准许可证,因为这是持续集成环境所使用的。如果为每个管道重新创建了CI环境(以确保每次都能从头开始运行),那么它们也需要下载SDK并接受许可。这就是SDK Manager许可证输入图片的地方。

特别是很难说出您的情况,但请放心,根据我的经验,这不是正常现象。最容易意识到的是,它所需要的只是在正确的位置放置一个文件,以停止寻求批准,而不是什么。但是,如果您使用SDK Manager UI,则不需要所有这些操作,因为它会提示您立即在UI中接受许可证。

设置完JAVA_HOME,ANDROID_HOME等之后。如果您输入adb --version,则无论您身在何处,它都可以使用:

$ adb --version
Android Debug Bridge version 1.0.41
Version 29.0.1-5644136
Installed as /home/martin/Android/Sdk/platform-tools/adb

所有这些之后,并假设您的Android Studio SDK指针指向了正确的位置,那么您应该走得很好。

请紧记,项目可以选择使用嵌入式 JDK(实际上它说建议使用),因此,如果Java适用于您,请忽略我安装Java的方式:)(我更喜欢使用我自己的JDK副本,我已经习惯了)。请记住,这是一个per-project设置。

my Java configuration in AS

HAXM怎么样?

HAXM是Intel专有工具,所有Android Studio / SDKManager所做的都是下载但未安装(据我所知)。无论如何,the official Google steps to install it on macOS在第4步中要明确指出(我引用了上面的链接):

  

下载完成后,运行安装程序。通常,您可以在以下位置找到安装程序:sdk / extras / intel / Hardware_Accelerated_ExecutionManager / IntelHAXMversion.dmg

更新

  1. HAXM:这是一个英特尔工具,具有安全隐患,并且除其他事项外,还需要提升的权限(对于macOS,要安装内核扩展),因此您必须自己完成安装。 SDK管理器唯一要做的就是下载文件,我认为它不会自行启动安装。现在安装HAMX相对简单。您甚至可以从Intel下载并自行安装。

  2. 关于自制软件,我不确定发生了什么,但是我没有使用 Flutter 进行Android开发,因此在这方面我的帮助将受到限制。我会尝试brew uninstall此处发生冲突的地方,或者至少尝试弄清Flutter为什么指向错误的 SDK。将我的颤抖建议当作是从未安装Flutter的人提出来的,只是凭空猜测:)