解决Flutter启动一直卡在 Running Gradle task ‘assembleDebug‘...

慈云数据 2024-05-13 技术支持 111 0

前言

解决Flutter启动一直卡在 Running Gradle task ‘assembleDebug‘...
(图片来源网络,侵删)

新建了一个Flutter工程后,Run APP 却一直卡在了Running Gradle task ‘assembleDebug’… 这里。百度查询原因是因为 Gradle 的 Maven 仓库在国外, 因此需要使用阿里云的镜像地址。

1、修改项目中android/build.gradle文件

解决Flutter启动一直卡在 Running Gradle task ‘assembleDebug‘...
(图片来源网络,侵删)

将 buildscript.repositories 下面的

//google()
//mavenCentral()
注释掉,改成
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/google'
}
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/jcenter'
}
maven {
   allowInsecureProtocol = true
   url 'http://maven.aliyun.com/nexus/content/groups/public'
}

allprojects.repositories 同上修改

使用"阿里云"仓库为下载源,可能会报错(gradle的仓库地址不安全警告的错误),因为配置了除 maven 中央仓库之外的其他不安全的仓库(一些国内的镜像仓库,如"阿里云"镜像仓库也是不安全的),如下所示:

A problem occurred configuring root project 'Packer'.

> Could not resolve all dependencies for configuration ':classpath'.

   > Using insecure protocols with repositories, without explicit opt-in, is unsupported. Switch Maven repository 'maven(http://maven.aliyun.com/nexus/content/groups/public/)' to redirect to a secure protocol (like HTTPS) or allow insecure protocols. See https://docs.gradle.org/7.0.2/dsl/org.gradle.api.artifacts.repositories.UrlArtifactRepository.html#org.gradle.api.artifacts.repositories.UrlArtifactRepository:allowInsecureProtocol for more details.

* Try:

Run with --info or --debug option to get more log output. Run with --scan to get full insights.

解决方法:只需要在App项目工程的 build.gradle 中,使用 allowInsecureProtocol 属性(允许gradle使用"不安全"的仓库并且不报警告信息)即可

allowInsecureProtocol = true

2、修改 Flutter SDK 中packages\flutter_tools\gradle\flutter.gradle文件

将 buildscript.repositories 下面的

//google()
//mavenCentral()
注释掉,改成
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/google'
}
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/jcenter'
}
maven {
   allowInsecureProtocol = true
   url 'http://maven.aliyun.com/nexus/content/groups/public'
}

将 DEFAULT_MAVEN_HOST 值修改成 "https://storage.flutter-io.cn";

private static final String DEFAULT_MAVEN_HOST = "https://storage.flutter-io.cn";
微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon