找不到扩展实现 class org.jetbrains.kotlin.idea.scripting.gradle.roots.GradleBuildRootsManager

could not find extension implementation class org.jetbrains.kotlin.idea.scripting.gradle.roots.GradleBuildRootsManager

我的项目在 Mac 上运行并成功构建,但我是从 github 克隆的,尽管 Android Studio 似乎工作正常,但项目无法构建。我使用 Kotlin DSL 设置这个项目。

Gradle sync failed: could not find extension implementation class org.jetbrains.kotlin.idea.scripting.gradle.roots.GradleBuildRoot

尝试使缓存无效,删除所有 .gitignore 规则,但它仍然是一样的。 有什么想法吗?

这可能不是“正确”的解决方案,但是,它对我有用。我必须下载 Android Studio 的更新 (Canary) 版本才能消除此错误消息,并最终再次构建我的 Android 项目。我发现这个 YouTrack JetBrains issue 人们还建议恢复到以前的已知工作版本 Android Studio 以重新构建他们的项目。

这是一个非常令人沮丧的问题,我希望其中一种方法可以为您解决构建问题!

为方便起见,这里是Android Studio Versions Download page

我有同样的问题(注意:运行 Linux/Ubuntu 20.04 LTS 和 Android Studio 4.1.1)。

我试过的东西没有工作并且错误仍然存​​在:

  • 使缓存无效/重新启动
  • 重启
  • 删除 .gradle.m2 文件夹
  • Android Studio 重新安装
  • 将 kotlin gradle 插件从 1.4.21 降级为 1.4.10

什么起作用了:

  • 将项目移动到磁盘上的另一个 folder/location 并打开 Android Studio

一旦我将项目移回原来的位置,我就会开始遇到同样的错误。这让我相信这是某种缓存问题,与缓存“无效”分开。

解法:

Android Studio / Intellij 创建一个名为 :

的隐藏文件夹

在 Linux 上:

AS : ~/.cache/Google/AndroidStudioX.X

IJ : ~/.cache/Jetbrains/IntelliJIdea2020.X

在 Mac 上:

AS : ~/Library/Caches/Google/AndroidStudioX.X

IJ : ~/Library/Caches/Jetbrains/IntelliJIdea2020.X

在 Windows:

AS : %HOME%\AppData\Local\Google\AndroidStudioX.X

IJ : %HOME%\AppData\Local\Jetbrains\IntelliJIdea2020.X

此文件夹内还有其他各种文件夹,但是我删除了相关的工作区文件 (workspace/[project name].[hashed value].xml),之后从其原始位置再次打开项目时问题消失了。

看来“使缓存无效/重新启动”并没有使所有缓存“无效”!

希望这能解决您的问题!

更新

因为这个答案有很多赞成票,所以这似乎是 Intellij 的一个持续错误。如果有人遇到此问题,在使用建议的解决方案解决之前,请考虑检查错误跟踪器上是否存在未解决的问题并提交新问题:https://youtrack.jetbrains.com/issues

如果有问题,请随时编辑此更新。

更新 2

@GeniusRUS 打开的问题:

https://youtrack.jetbrains.com/issue/KT-44937

Mac 用户删除以下文件:

~/Library/Caches/Google/AndroidStudio4.1/workspace/<your_project_name>.58dfbe93.xml

PS:感谢 @Mark Keen 的解决方案。

在移动项目和文件之后,我也有幸在 Android Studio 4.1.1(在 Windows 10 下)中遇到这个错误。不幸的是,上述解决方案中的 none 对我有用,但它们帮助我缩小了问题范围。

所以,我发现下面有一个工作区文件夹:

%HOME%\AppData\Local\Google\AndroidStudio4.1\workspace\

有几个 *.xml 文件的名称类似于 android 项目。我删除了那个不起作用的。

然后切换回 Android Studio 并使用 Files > Invalidate Caches / Restart... 功能。 Android Studio 重新启动,问题已解决。


奖励:我是如何找到工作区文件夹的?

我使用了 Sysinternals 中的 Procmon.exe,我在其中过滤了 Process Name = studio64.exe。然后,我在 Android Studio 中使用 elephant-with-the-arrow 按钮(将项目与 Gradle 文件同步)。在录制结束时,有 Android Studio 在 Gradle 失败之前使用的工作区文件夹。

基本上我删除了 .idea 文件夹,然后使其失效并重新启动...错误消失并成功构建。

我向 YouTrack 添加了一张“问题”票,我在其中详细描述了我的案例。 支持代理表示,该问题已在 IDEA 2021.1 平台中得到修复。 并且还针对这个案例给出了建议

Link 发布 https://youtrack.jetbrains.com/issue/KT-44937

我通过更改根项目目录名称解决了这个问题。你可以试试。