无法解析配置“:app debug Runtime Classpath”的所有依赖项

Ven*_*Ren 14 android gradle build.gradle

我将我的 android 项目 gradle 5.4.1-all 升级到 6.5-bin,并将构建工具 4.0.0 升级到 4.1.0,然后我收到这样的错误

Could not resolve all dependencies for configuration ':app:debugRuntimeClasspath'.
Could not create task ':app:minifyReleaseWithR8'.
Cannot query the value of this provider because it has no value available.
Run Code Online (Sandbox Code Playgroud)

Raz*_*692 8

将构建工具从 4.0.0 升级到 4.1.0 对我来说听起来不太合适——

要在 build.gradle 文件中设置 buildToolsVersion(例如“30.0.5”),我建议转到“工具”>“SDK 管理器”,然后转到“SDK 工具”选项卡;在这里,我发现默认视图具有误导性,因为它显示了“Android SDK Platform-Tools”的某个版本(您可能已升级到的版本) - 但当您勾选“显示包详细信息”选项时,您会看到另一个版本实际安装了。因此,我建议将 buildToolsVersion 设置为后一个安装的版本。


Tre*_*nez 2

compileSdkVersion仔细检查您在文件中分配的内容的类型build.gradle

如果您使用的是其中的值,则gradle.properties需要首先将其解析为整数,否则您将遇到与 R8 任务相关的崩溃,因为该任务配置运行会触发依赖项配置的进一步解析。

所以如果你的中有这样的东西build.gradle

android {
  compileSdkVersion project.targetSdk
  ...
}
Run Code Online (Sandbox Code Playgroud)

这在你的gradle.properties

targetSdk=30
Run Code Online (Sandbox Code Playgroud)

您需要从字符串中解析整数。

android {
  compileSdkVersion Integer.parseInt(project.targetSdk)
  ...
}
Run Code Online (Sandbox Code Playgroud)