Gradle/Flutter 中的构建错误:'Could not resolve all artifacts for configuration'?

Build error in Gradle/Flutter: 'Could not resolve all artifacts for configuration'?

尝试构建应用程序时,编译器吐出:


FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app_settings'.
> Could not resolve all artifacts for configuration ':app_settings:classpath'.
   > Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.70.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.3.70/kotlin-gradle-plugin-1.3.70.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings
   > Could not find org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.61.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.61/kotlin-stdlib-jdk8-1.3.61.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings > com.android.tools.build:gradle:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.lint:lint-gradle-api:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:gradle-api:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > androidx.databinding:databinding-compiler-common:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools:sdk-common:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools:common:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools.build:manifest-merger:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools.analytics-library:tracker:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools:sdklib:26.6.1 > com.android.tools:repository:26.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1 > com.android.tools:sdk-common:26.6.1 > com.android.tools.analytics-library:shared:26.6.1
   > Could not find org.ow2.asm:asm:7.0.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/ow2/asm/asm/7.0/asm-7.0.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings > com.android.tools.build:gradle:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1
   > Could not find org.ow2.asm:asm-analysis:7.0.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/ow2/asm/asm-analysis/7.0/asm-analysis-7.0.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings > com.android.tools.build:gradle:3.6.1
   > Could not find org.ow2.asm:asm-commons:7.0.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/ow2/asm/asm-commons/7.0/asm-commons-7.0.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings > com.android.tools.build:gradle:3.6.1
         project :app_settings > com.android.tools.build:gradle:3.6.1 > com.android.tools.build:builder:3.6.1
   > Could not find org.ow2.asm:asm-util:7.0.
     Searched in the following locations:
       - https://dl.google.com/dl/android/maven2/org/ow2/asm/asm-util/7.0/asm-util-7.0.pom
     If the artifact you are trying to retrieve can be found in the repository but without metadata in 'Maven POM' format, you need to adjust the 'metadataSources { ... }' of the repository declaration.
     Required by:
         project :app_settings >....

完整输出:https://pastebin.com/Vj67AWAH

我试过删除 app_settins 插件,但它在另一个插件上失败了,所以我认为这是一个普遍的问题,而不是特定于插件的问题。

我尝试重新安装不同版本的 AndroidStudio,就像 jdk 和 flutter sdk

我就是无法理解它

求助!


编辑

这是build.gradle:


buildscript {
    ext.kotlin_version = '1.4.31'
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}


这可能是侥幸,但我在网上搜索时偶然发现 this!

有点跟着它,我删除了所有缓存的插件 user_folder>/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/ 然后运行 flutter pub 进入项目。

现在可以了。

如果有人知道why/how这个可行,请解释一下,谢谢!