欢迎光临散文网 会员登陆 & 注册

想锤烂这堵破墙之--Running Gradle task 'assembleDebug'...

2023-04-06 00:07 作者:蒙住眼享受专家  | 我要投稿

gradle 源

maven { url 'https://maven.aliyun.com/repository/google' }

//central仓和jcenter仓的聚合仓
maven { url 'https://maven.aliyun.com/repository/public' }
//gradle-plugin
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

flutter 源( 环境变量 )

FLUTTER_GIT_URL=https://mirrors.tuna.tsinghua.edu.cn/git/flutter-sdk.git

FLUTTER_STORAGE_BASE_URL=https://mirrors.tuna.tsinghua.edu.cn/flutter

gradle全局换源, 在 ~/.gradle/ 里新建init.gradle, 内容如下:

allprojects{

    repositories {

        def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/repository/public'

        def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/repository/public'

        def ALIYUN_MAVEN_CENTRAL = 'http://maven.aliyun.com/nexus/content/repositories/central'

        def ALIYUN_GOOGLE_URL = 'https://maven.aliyun.com/repository/google'

        def ALIYUN_GRADLE_PLUGIN_URL = 'https://maven.aliyun.com/repository/gradle-plugin'

        all { ArtifactRepository repo ->

            if(repo instanceof MavenArtifactRepository){

                def url = repo.url.toString()

                if (url.startsWith('https://repo1.maven.org/maven2/')) {

                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."

                    remove repo

                }

                if (url.startsWith('https://jcenter.bintray.com/')) {

                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."

                    remove repo

                }

                if (url.startsWith('https://dl.google.com/dl/android/maven2/')) {

                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GOOGLE_URL."

                    remove repo

                }

                if (url.startsWith('https://plugins.gradle.org/m2/')) {

                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL."

                    remove repo

                }

//https://repo.maven.apache.org/maven2/ 这条if可以不要, 有的地方没墙

                if (url.startsWith('https://repo.maven.apache.org/maven2/')) {

                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL."

                    remove repo

                }

            }

        }

        maven { url ALIYUN_REPOSITORY_URL }

        maven { url ALIYUN_GOOGLE_URL }

        maven { url ALIYUN_GRADLE_PLUGIN_URL }

    }

}

Flutter卡在 Running Gradle task 'assembleDebug'...不动解决办法

在 ~/.gradle/gradle.properties 文件中加入

org.gradle.console=verbose

然后flutter run -v 就能让弱智gradle输出该输出的东西

可以看到类似 Evaluating project ':permission_handler_android' using build file 'C:\Users\xxx\AppData\Local\Pub\Cache\hosted\mirrors.tuna.tsinghua.edu.cn%47dart-pub%47\permission_handler_android-10.2.0\android\build.gradle'.

这样的log, 如哪个卡住了就打开这个该死的build.gradle文件把里的google()和mavenCentral()之类的东西删掉换上文章最顶端的源.


要么直接不换源给傻逼gradle挂代理, 在 ~/.gradle/gradle.properties 文件中加入

systemProp.http.proxyHost=127.0.0.1

systemProp.http.proxyPort=8080

systemProp.https.proxyHost=127.0.0.1

systemProp.https.proxyPort=8080

然而我现在西安一个全季住着, 电信网络, 基本所有梯子都暴毙了

想锤烂这堵破墙之--Running Gradle task 'assembleDebug'...的评论 (共 条)

分享到微博请遵守国家法律