flutter应用程序构建错误 FAILURE: Build failed with an exception
回答 4
浏览 393
2022-10-31
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
> Could not resolve com.facebook.android:facebook-android-sdk:latest.release.
Required by:
project :app
> Failed to list versions for com.facebook.android:facebook-android-sdk.
> Unable to load Maven meta-data from https://jcenter.bintray.com/com/facebook/android/facebook-android-sdk/maven-metadata.xml.
> Could not HEAD 'https://jcenter.bintray.com/com/facebook/android/facebook-android-sdk/maven-metadata.xml'.
> Read timed out
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 2m 8s
Exception: Gradle task assembleDebug failed with exit code 1
Exited (sigterm)
这是我在运行应用程序时得到的错误。
我试着在build.gradle文件中加入mavenCentral(),就像外面的一些建议一样,但这对我来说并不奏效。我还试过
implementation 'com.facebook.android:facebook-android-sdk:latest.release'
但仍然是一样的
4 个回答
#1楼
得票数 1
我现在也遇到了同样的问题,我发现有一个jcenter出现了故障。
那么,解决方案是什么呢?
- Ares 2022-10-31
我按照这个解决方案stackoverflow.com/a/74261013/7914759,从我的build.gradle中删除了jcenter,一开始在没有互联网连接的情况下构建应用程序,然后用它重新构建。这对我来说是有效的。
- Pavlo Trinko 2022-10-31
这在CI/CD中是行不通的。
- Ares 2022-10-31
#2楼
已采纳
得票数 0
你好,在你的build.gradle中,你不应该添加实现"com.facebook.android:facebook-login:15.0.2",因为这个插件已经为你定义了这个依赖项。
参考文献:https://github.com/darwin-morocho/flutter-facebook-auth/issues/301#issuecomment-1296944186
从build.gradle中删除这一行。 implementation 'com.facebook.android:facebook-android-sdk:latest.release'
#3楼
得票数 0
作为临时措施
我建议使用这个方法
allprojects {
repositories {
// Jcenter mirror
maven { url "https://maven.aliyun.com/repository/jcenter" }
// other repo
}
}
或其他镜像
---更新 ----
以另一种方式
allprojects {
repositories {
all { ArtifactRepository repo ->
if (repo instanceof MavenArtifactRepository) {
if (repo.url.toString().startsWith('https://jcenter.bintray.com/')) {
remove repo
add(mavenCentral())
}
}
}
}
}
如果jcenter的网址存在,这段代码会改变为mavenCentral的网址。
没有成功。有什么其他的方法可以解决吗?
- sachin 2022-10-31
你是否删除了Jcenter()这一行?
- Goodham 2022-10-31
我试过这两种情况,一次使用Jcenter(),另一次删除它,都没有成功。
- sachin 2022-10-31
它并不奏效。
- Ares 2022-10-31
更新的帖子。请查看
- Goodham 2022-11-01
#4楼
得票数 0
根据官方文档,jcenter已经失效,Bintray/JCenter users should start migrating to a new hosting solution.
的解决方案是将jcenter从build file
中移除,并将其替换为
mavenCentral() // <- add it
对于react-native用户来说,jcenter()
可能存在于你最近安装的某些部署中。要检查jcenter,请在android-studio
中打开你的项目,以便轻松地检查所有build.gradle
文件。
另一个解决方案是,将你的系统从互联网上断开,然后建立你的项目。