将Android Studio和Gradle更新为3.5后, 我现在收到此错误:
NDK分辨率结果:项目设置:Gradle模型版本= 5.4.1,NDK版本为未知
我将build-gradle中的Gradle版本改回了3.4.2,但这没有帮助。
答案 0 :(得分:51)
我遇到了类似的问题,并通过使用Import project (Gradle, Eclipse, etc.)
而不是Open existing Android Studio project
打开项目来解决了这个问题。
答案 1 :(得分:12)
您可以从File> Project Structur>从左侧面板中选择SDK位置,然后按Download from NDK location部分来下载NDK。
答案 2 :(得分:9)
升级我的android studio后,我遇到了同样的问题。您只需要打开local.properties并将ndk.dir路径更改为您的NDK路径即可。
代码:
ndk.dir = D:\ Android \ SDK \ ndk-bundle
sdk.dir = D:\ Android \ SDK
答案 3 :(得分:6)
我在项目中没有使用NDK,但是我遇到了同样的问题。我将SDK版本更新到最新版本后,问题消失了 compileSdkVersion 29
答案 4 :(得分:4)
如果您不使用NDK,请忽略该错误。
我已经安装了NDK以查看是否有任何区别。没什么区别(除了未使用的大于2 GB的NDK文件夹:)。因此,我将其删除(即删除ndk文件夹并删除您之前设置的NDK environnent变量)。
答案 5 :(得分:4)
我有一个先前的答案(由于被主持人删除),我在其中详细说明了一些解决方法(如此处所列)适用于某些人,但是gradle中存在一个潜在的错误,因为该解决方法并不适用于所有人(特别是:他们都不适合我)
相关的google问题在这里:https://issuetracker.google.com/issues/140403764
更新:截至今天(20190920),他们表示已解决潜在问题,所以我希望今天(20190920)之后的gradle的未来版本将包含此修复程序。
Update2:今天(20190926),我从一位Googler收到回复,称有问题的代码位于Android Studio中,并且包含在3.6版本的分支中,但目前在任何可公开使用的版本中均不可用(Android Studio 3.6 Canary 12已在进行此修复之前发布。无论如何,这使您知道要更新的组件以及要注意的版本。看起来Android Studio 3.6 Canary 13及更高版本应该具有https://issuetracker.google.com/issues/140403764#comment13
在此之前,您可以尝试解决方法,但是当出现供应商错误且解决方法不起作用时,您只需等待供应商补丁即可。
答案 6 :(得分:3)
今天从Android Studio 3.5.0升级到3.5.1之后,我首先遇到了这个问题。
我只是从顶部菜单Build-> Rebuild Project进行了重建。
这可能并非对每个人都有效,具体取决于导致问题的原因,但对我而言却有效。试一试。
(此外,我不使用NDK,也从未下载过它。仍然没有下载过)
答案 7 :(得分:3)
我通过转到file > Invalidate Caches\Restart
进行了修复
IDE将重新启动,问题将得以解决
答案 8 :(得分:2)
答案 9 :(得分:1)
在应用级build.gradle
文件中添加了两个库之后,我遇到了相同的错误。
解决方案只是清理项目。
在菜单栏中选择:Build >> Clean Project
在那之后,错误对我来说已经消失了。我什么也没做。
答案 10 :(得分:1)
我在Mac上也遇到了同样的问题。
建议:强制.gradle文件夹自行重建。
这仍然在事件日志中显示“ NDK版本为未知”,但它构建成功,并且没有出现任何问题。 (我没有下载NDK)
这将导致Android Studio重建并重新下载您的.gradle文件夹,从而在此过程中修复有冲突的文件。
答案 11 :(得分:1)
就我而言,我通过升级到SdkVersion 29来解决它并迁移到AndroidX。
答案 12 :(得分:1)
我有同样的问题。我的环境是:
我通过SDKManager卸载了CMake 3.10。 (仅CMake安装为3.6)
Gradle同步和构建成功。
(1)
android-gradle-plugin 3.1.2使用了CMake 3.10。
在android-gradle-plugin 3.1.2(或3.1。+)中,对CMake 3.7及更高版本的支持是预览功能。
(来自gradle assembleDebug
或gradle sync
的输出消息。)
(2)
https://developer.android.com/studio/projects/add-native-code.html#use_a_custom_cmake_version
SDK Manager包含3.6.0的CMake分支版本和3.10.2。在build.gradle中未设置特定CMake版本的项目是使用CMake 3.6.0构建的。
也许此行为是android-gradle-plugin 3.3或更高版本。 (它来自android-studio 3.3,可以下载CMake 3.10)
android-gradle-plugin 3.1.2使用了已安装的CMake的最新版本。
答案 13 :(得分:1)
最近一次Android Studio升级后,我收到了相同的错误消息。我在这里尝试了其他答案,但没有一个有效。但是@Zahra的回答向我指出了确实有用的东西:
转到文件->项目结构... 在“ Android NDK位置”下,单击下拉列表,然后选择“ 建议使用DEFAULT NDK ”选项。
在选择默认值之前,其中的路径略有不同。使用SDK Manager进行升级的地方,路径似乎已更改。
现在,在local.properties文件中,将 sdk.dir 设置为与“ DEFAULT NDK Recommendation ”选项相同的目录。
答案 14 :(得分:1)
就我而言,Android Studio已安装在新的Mac上。只需下载Android 9(我的目标/编译SDK为28)和构建工具。此后问题解决了。
答案 15 :(得分:0)
在build.gradle脚本中将claaspath更改为'com.android.tools.build:gradle:3.5.2'
答案 16 :(得分:0)
将ndk版本从20降级到r17c,将cmake版本从3.10降级到3.6.411459为我解决了这个问题
答案 17 :(得分:0)
好的。我最近下载了最新版本的Android Studio,并遇到了类似的错误。所以最终我创建了一个新项目。 选择Kotlin语言,然后选择Jelly Bean(谈论“从中挑选选项”)。 然后整个同步开始,但是第一次同步失败,最终再次自动同步,一切开始正常进行。 自从我是初学者以来,是否修改了默认代码(文本),但未收到任何错误消息。 预览还不错,我继续学习。 对不起,我无法解释清楚。我只是一个初学者。 哦!您需要连接到Internet才能正常工作。
答案 18 :(得分:0)
如果在Android Studio升级后发生此问题,并且您从右下角通知启动了插件更新:打开File > Project structure
,然后将Android Gradle版本更改为Android Studio版本,然后将Gradle版本降级为上一个版本
就我而言,我将Android Gradle插件从3.5.3降级到3.2.1,并将Gradle版本从5.4.1降级到4.6。
答案 19 :(得分:0)
我将gradle-wrapper.properties文件的gradle版本从4.1修改为4.6。
答案 20 :(得分:0)
我遇到了这个问题,没有一种解决方案适合我。问题是,可能由于非常广泛的原因而出现此错误或警告。您可以按照以下步骤找出问题所在:
缺少NDK
当Gradle开始编译本机依赖项时,它将在“ app”文件夹中创建“ .cxx”文件夹。在该文件夹中,您可以找到“ ndk_locator_record.json”文件,这是非常奇怪的日志文件类型。基本上,Gradle会检查所有路径以查找NDK文件夹。如果NDK版本号有任何错误或不匹配,您可以在此文件中看到。
NDK构建失败
由于某些未知原因(可能是Gradle中的错误),ndk生成不会在事件日志窗口上显示实际错误,而是显示失败,例如 Gradle sync failed:为ndkBuild执行外部本机生成.... < / em>,后跟 NDK分辨率结果:项目设置:Gradle模型版本= 5.4.1,NDK版本为UNKNOWN 。
在这种情况下,请返回.cxx> ndkBuild> debug> x86(x64或任何其他CPU拱门) 在此文件夹中,您可以找到“ json_generation_record.json”文件,它是相同类型的日志,通常最后一个条目有实际错误。例如,对我来说
import random
def shuffle_columns(list_of_rows):
columns = []
for column in zip(*list_of_rows):
# shuffled list of column values
shuffled = random.sample(column, len(column))
columns.append(shuffled)
return [list(row) for row in zip(*columns)]
从这里开始,您可以了解引擎盖下出了什么问题。
答案 21 :(得分:0)
如果未安装NDK,并且Android项目需要它,则首先安装NDK。
在 Windows操作系统上,将NDK路径添加到 PAT H环境变量。这样可以解决版本问题。
在我的情况下,NDK路径是 C:\ Users \\ AppData \ Local \ Android \ Sdk \ ndk \ 21.0.6113669
答案 22 :(得分:0)
我之前遇到过此问题,并通过确保对应用程序目录具有正确的权限来解决此问题。
我正在使用macOS,所以我做了:
chmod -R 777 your_android_project
问题消失了。
答案 23 :(得分:0)
我刚刚关闭了项目,关闭了android studio,重新启动了PC,跟踪了我的项目,并删除了“ B:/PROJECTNAME/.idea”中的.Idea文件夹,瞧。
问题解决了。重新同步。 N / B:我的gradle是androidx。祝你好运。
答案 24 :(得分:0)
更新Android Studio后,我遇到了同样的问题。 更新Android SDK生成工具后,解决了我的问题。 [工具-> SDK管理器-> SDK工具-> Android SDK生成工具]。
然后尝试清理项目 [Build-> Clean Project]。
最后重新启动Android Studio IDE……
答案 25 :(得分:0)
在检查项目结构中的建议并更新了两个建议的更新后,问题为我解决了。抱歉,当我按下每个模块的更新并逐步同步时,模块名称便消失了,我不记得了。自动启动,此问题消失后
答案 26 :(得分:0)
通过Bitbucket超链接从版本控制导入项目后,出现了此错误(以及其他一些错误)。
一旦导入,请关闭项目并使用File > New > Import Project
重新导入。之后,一切正常构建。
(已经正确指定了NDK路径,并且只能以新的方式导入)
元:
Android Studio 3.5
Build #AI-191.8026.42.35.5791312, built on August 8, 2019
JRE: 1.8.0_202-release-1483-b49-5587405 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.13.6
Gradle 3.4.0
答案 27 :(得分:0)
当我同时将Android Gradle插件版本从3.1.4更新到3.4.0并将Gradle版本从4.4更新到5.1.1时,问题已解决。当然,我使用SDK管理器下载了最新的NDK(Side by Side)。
答案 28 :(得分:0)
升级后,我的一个项目遇到了同样的问题。 我解决了它,只是从local.properties文件中删除了ndk.dir = D:\ Android \ SDK \ ndk-bundle行。
答案 29 :(得分:-1)
当我将Android Gradle插件版本从3.1.2更新到3.5.1时,我也遇到了这个问题
这是解决此问题的方法:
转到项目根文件夹中的gradle.properties file
,然后添加 android.useDeprecatedNdk=true
答案 30 :(得分:-1)
我有同样的问题,而不是打开项目,而是从导入
File -> New -> Import Project...
问题已解决