如何修复android studio 2.3 NDK bug?

Ryder Thacker 08/20/2017. 9 answers, 13.558 views
android android android-ndk android-ndk

我认为这是一个错误,因为我没有任何问题,直到新的更新。 所以我不能使用gradle控制台来调试我的应用程序,因为我有这个警告 -

“按需配置是一项孵化功能,NDK缺少”平台“目录如果您使用的是NDK,请确认ndk.dir已设置为有效的NDK目录,它目前设置为C:\ Users \ Emily Thacker \ AppData \ Local \ Android \ Sdk \ ndk-bundle。如果您不使用NDK,请从ANDROID_NDK_HOME或local.properties中取消设置NDK变量以删除此警告。

我很确定我没有使用NDK,我没有看到我可以如何解决这个问题,这是我的local.properties

## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file should *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
sdk.dir=C\:\\Users\\Emily Thacker\\AppData\\Local\\Android\\Sdk 

另外我没有在我的目录中看到ANDROID_NDK_HOME文件。

2 Comments
Harshit Agrawal 03/08/2017
你使用哪种版本的gradle?
3 Ryder Thacker 03/08/2017
我使用的是3.3版本。

9 Answers


xsveda 03/16/2017.

这是一个Android Gradle插件错误,已经在这里报道: https : //code.google.com/p/android/issues/detail? id =228424

1 comments
3 Matt 06/20/2017
错误报告条目( issuetracker.google.com/issues/37127636#comment26 )声明该警告将在gradle插件2.4及更高版本中修复。

Carl 04/24/2017.

我能够阻止这个令人讨厌的消息; 这是对我有用的东西。

背景:

  1. 我根本没有使用NDK,并且从未安装过NDK。

  2. 然而,正如xsveda的另一个答案中所提到的,这是一个Gradle错误,在这里有记录:

    https://code.google.com/p/android/issues/detail?id=228424

    所以即使“NDK无辜者”也可能成为其受害者。

  3. 问题是Gradle正在通过将字符串“/ ndk-bundle”添加到SDK文件夹位置来计算NDK文件夹的位置,即使您从未安装过NDK。

  4. 在建立了对某个特定位置存在的NDK文件夹的错误期望之后,每次构建时,Gradle会向您发出警告,提示您“缺少”该文件夹。 这只是一个警告,并不妨碍你的构建完成,但它很烦人。

我如何阻止恼人的消息:

由于磁盘空间很便宜,而且我的时间对我来说很珍贵,所以我通过安装NDK来掩饰这个错误,尽管我不打算使用它。

要做到这一点,你可以去:

文件 - >项目结构 - > SDK位置

并查看Android NDK位置字段。 如果您尚未安装NDK,则此字段将为空。

在这种情况下,在该字段下方将是安装NDK的链接。 点击该链接并安装它。 这需要几分钟的时间。

一旦安装完成并关闭安装进度对话框,NDK的位置将自动写入Android NDK位置字段。 这将如下所示:

C:\ dev的\ astudiosdk \ NDK束

单击确定按钮并再次构建。 错误消失。

请注意,您may只需在该字段中键入预期的文件夹; 我没有尝试过。 但我不知道这是否会导致其他问题,特别是如果您最终决定实际使用NDK。


Harshit Agrawal 03/09/2017.

你可以试试看:

在android studio中有一个复选框。

Android Studio - >首选项 - >编译器 - > Gradle - >命令行选项

在这里输入图像描述

4 comments
2 Ryder Thacker 03/08/2017
还是行不通。
Harshit Agrawal 03/09/2017
这可能是由于快速构建过程
3 Ryder Thacker 03/10/2017
按需配置已为我检查。
Harshit Agrawal 03/10/2017
@RyderThacker取消选中它并再次同步gradle

gnB 05/23/2017.

听起来像是从Android Studio IDE更新SDK可以提供帮助

步骤是:

  1. 转至Tools (top-menu item) > Android > SDK Manager
  2. 点击SDK Tools标签
  3. 向下滚动到NDK复选框更新选项

这里的屏幕截图: 如何更新Android NDK?

1 comments
CorayThan 06/26/2017
这并没有解决问题,只是下载NDK,你可能没有任何好的理由下载。

Alex Cohn 03/21/2017.

您不应该为Android SDK使用带空格的目录路径。 作为一种简单的治疗方法,您可以手动更改

sdk.dir=C:/Users/EMILYT~1/AppData/Local/Android/Sdk 

你不需要安装NDK。


Oleksandr 07/26/2017.

通过从SDK根文件夹中删除空的ndk-bundle文件夹(不知道为什么以及何时出现)来解决此问题:

android SDK文件夹中的ndk-bundle文件夹

以下是解释为什么它有助于解决Android bug跟踪器问题

对于任何人在插件3.0.0-alpha1或更高版本上仍然遇到此问题。 请提交一个新的错误,并尝试回答#33中的all问题。 我们需要更多的信息来调试这个问题,并且向一个已关闭的bug添加注释是一个让它迷失方向的简单方法。

为了给出一些背景知识,插件检查NDK目录是否有效。 最有可能的是,你没有使用NDK。 我们自动假定它在{sdk} / ndk-bundle中。 如果{sdk} / ndk-bundle不存在,它将被忽略。 如果您看到'NDK缺少“platforms”目录,则表示存在{sdk} / ndk-bundle,但不是{sdk} / ndk-bundle / platforms目录。 这意味着你出于某种原因已经损坏了NDK。 如果你没有使用它,删除{sdk} / ndk-bundle是安全的。


davenpcj 08/17/2017.

对我而言,NDK错误证明是一个错误的诊断。 当Gradle在java.io.UncheckedIOException类上抛出ClassNotFound异常时发生此错误。

虽然该类是在Java 8中定义的,但它并未包含在我已安装的JDK 1.8.0u51(或者大概早期版本)中。

更新JDK并删除1.8.0u51版本解决了问题。


RagsB 06/21/2017.

只需安装Android NDK

这解决了我的错误和警告!

https://i.stack.imgur.com/Lsu8E.png

  1. 转到ools -> Android -> SDK Manager
  2. 点击SDK Tools
  3. 检查NDK
  4. 申请并退出。
1 comments
RagsB 06/21/2017
好吧,下面是安装NDK的步骤,1.转到tools.2.Android 3.SDK Manager.3。 SRK工具4.检查NDK单击应用,然后确定! 5.Rebuild

Lalit Baghel 04/14/2017.

我提供了一个适合我的解决方案。 这种类型的错误陈述是: -

1.NDK缺少“平台”目录。

2.如何设置ANDROID_NDK_HOME以便Android Studio不要求提供ndk位置?

Soultion:你正在尝试更多的解决方案虽然你不需要NDK

请打开你的build.gradle,在这里你使用两个gradle路径: -

classpath'com.android.tools.build:gradle:2.3.0'classpath'com.android.tools.build:gradle:2.2.0'

在这里你可以删除一个类路径并只使用一个

gradle的类路径,然后清理项目这对我来说永远不需要设置ndk路径或ndk设置。

Android Studio NDK 2.3 BUG

2 comments
Patrick Robert Shea O'Connor 05/24/2017
这似乎是您尝试使用两个Gradle版本的问题,并且您选择保留2.2.0,以“固定”该错误。 你的建议是降级到2.2.0,这不是使用2.3和解决此错误的解决方案。
Lalit Baghel 06/02/2017
使用任何已安装的Gradle版本,如classpath'com.android.tools.build:gradle:2.2.0'

Related questions

Hot questions

Language

Popular Tags