android - 在构建 VSCode 和 Android Studio (Flutter) 的 gradle 时,配置根项目“android”时出现问题
问题描述
今天开始学习Flutter并成功下载了一切。但是当我运行我的应用程序时,调试器(两者VSCode
和Android Studio
)给了我这个错误。
Launching lib\main.dart on sdk gphone x86 in debug mode...
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring root project 'android'.
> Could not resolve all artifacts for configuration ':classpath'.
> Could not download builder.jar (com.android.tools.build:builder:3.5.0)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.5.0/builder-3.5.0.jar'.
> Premature end of Content-Length delimited message body (expected: 8174407; received: 4456416
> Could not download bundletool.jar (com.android.tools.build:bundletool:0.9.0)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/0.9.0/bundletool-0.9.0.jar'.
> Premature end of Content-Length delimited message body (expected: 5248142; received: 4456416
* 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 21m 37s
Gradle task assembleDebug failed with exit code 1
Exited (sigterm)
这是build.gradle
buildscript {
ext.kotlin_version = '1.3.50'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
jcenter()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
task clean(type: Delete) {
delete rootProject.buildDir
}
任何帮助将不胜感激,因为我试图解决这个问题 6 小时!
注意:- 这是我在 Flutter 和 Android Studio 中的第一个应用程序,VSCode
解决方案
所以在找到答案后回答我自己的问题,我来这里是为了帮助别人
不管是不是第一次。当您单击应用程序上的运行时,您会收到 X gradle build 错误如果您的错误中有以下任何行,即使是单行,请尝试此解决方案
Launching lib\main.dart on sdk gphone x86 in debug mode...
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring root project 'android'.
> Could not resolve all artifacts for configuration ':classpath'.
> Could not download builder.jar (com.android.tools.build:builder:3.5.0)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.5.0/builder-3.5.0.jar'.
> Premature end of Content-Length delimited message body (expected: 8174407; received: 4456416
> Could not download bundletool.jar (com.android.tools.build:bundletool:0.9.0)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/0.9.0/bundletool-0.9.0.jar'.
> Premature end of Content-Length delimited message body (expected: 5248142; received: 4456416
SOLUTION
去这个位置:- .flutter/packages/flutter_tools/gradle/flutter.gradle
**
- 在对其进行编辑之前将文件备份到另一个位置
- 搜索一个叫做
buildscript
; - 它应该像那样出现(或类似的,别担心你有备份文件)
并覆盖此代码
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
}
}
有了这个
buildscript {
repositories {
maven {
url 'https://dl.google.com/dl/android/maven2'
}
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
}
}
还是你的问题没有解决?如果已解决,请不要尝试下一个,否则请尝试。(即使这不起作用,然后将备份文件放在它的位置,看看它是否工作)
然后在您的android
文件夹中转到build.gradle
(在您的项目文件中转到
android/build.gradle
)并将其更改buildscript
为这个(不要担心代码不是 100% 像这样。只需在显示的位置添加指定的行就可以了)
buildscript {
repositories {
google()
mavenCentral() //add this line
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1' // Doesn't matter what you have here
}
}
推荐阅读
- php - 从 Oculus Quest 上传到 LAMP 服务器时,上传的文件为 0 字节
- python - 合并熊猫上的两个数据框
- javafx - Jfreechart-fx:如何在组合域图中调整子图的大小
- android - 全屏打开详细信息的BottomNavigationView
- html - 我怎样才能删除链接中的下划线
- ios - 广度优先搜索:线程 1:Swift 运行时失败:强制展开 nil 值
- python - PM2启动的奇怪问题
- sqlite - Listview不显示存储在数据库中的数据
- aframe - AFrame:使用资产中的图像时,a-image 会引发错误
- terraform - 用于资源输出的 Terraform ignore_changes