我一直在处理android studio gradle中的一个问题数小时,我无法解决它。
我正在尝试构建我的第一个项目,但gradle出现了一个问题。下面是我的build.gradle文件的外观:
plugins {
id 'com.android.application' version '7.4.0' apply false
id 'com.android.library' version '7.4.0' apply false
}
enter image description here
这就是问题的背景:
A problem occurred configuring root project 'My Application'.
> Could not resolve all files for configuration ':classpath'.
> Could not find gradle-7.4.0.jar (com.android.tools.build:gradle:7.4.0).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/7.4.0/gradle-7.4.0.jar
> Could not find builder-7.4.0.jar (com.android.tools.build:builder:7.4.0).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/7.4.0/builder-7.4.0.jar
> Could not find bundletool-1.11.4.jar (com.android.tools.build:bundletool:1.11.4).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/1.11.4/bundletool-1.11.4.jar
> Could not find protos-30.4.0.jar (com.android.tools.analytics-library:protos:30.4.0).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/protos/30.4.0/protos-30.4.0.jar
Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
我还添加了图像。
我不知道怎么解决这个问题,任何帮助都将不胜感激。
1条答案
按热度按时间t5zmwmid1#
我也观察到了同样的问题。我发现了一些模棱两可的地方,也许可以解释正在发生的事情。
如果您导航到https://maven.google.com/web/index.html#com.android.tools.build:gradle:7.4.0,您将看到一个网页,其中给予了有关com.android.tools.build.gradle-7.4.0的信息。如果您将鼠标悬停在jar或pom文件的链接上,您将看到一个与搜索指示的URL不同的URL:https://dl.google.com/android/maven2/com/android/tools/build/gradle/7.4.0/gradle-7.4.0.jar。请注意,缺少“/dl/”部分。这至少是我的浏览器在浏览器窗口底部显示的内容。看到这一点,我进入我的setting.gradle.kts文件,编辑了我的pluginManagment存储库部分,添加了以下存储库:
然后,我能够构建我的项目,而不会出现找不到com.android.tools.build.gradle插件的错误。在我的情况下,我看到的搜索位置列表略有不同。我的失败是因为它无法找到gradle-7.4.0.pom文件,而不是jar文件。所以,我并没有完全看到您所看到的,但是很有可能是相关的,因为当从存储库解析插件工件时,pom文件通常在jar文件之前被读取。
当我遇到这个问题时,我会复制搜索到的存储库的链接并将其粘贴到浏览器中,果然,使用这些搜索到的URL位置时,我会收到一个HTTP 404错误。当我通过删除链接的“/dl/”部分来修改链接时,文件会下载。所以,你可能会认为我的解释解释了这个问题。然而,在我解决了这个问题之后,我在浏览器中重新输入了失败的URL(带有“/dl/”部分的URL),但这次它正确地工作了,没有任何错误。对于为什么URL有时工作有时失败,我能想到的唯一解释是处理该URL请求的服务器或代理服务器有时离线。
说了这么多,你可能会遇到下一个问题。为了使用android gradle 7.4,你必须使用比Android Studio海豚更高的android studio版本|2021.3.1补丁1.请参阅https://developer.android.com/studio/releases#android_gradle_plugin_and_android_studio_compatibility不幸的是,据我所知,所有版本的Android Studio,这将是兼容使用Android gradle插件7.4只提供预览版Android Studio发布。所以,如果你正在开发和限制自己只构建代码使用官方发布的稳定工具,你坚持使用Android gradle插件7.3.1,直到下一个版本的Android Studio 正式发布。