build.gradle.kts中zip64扩展的启用位置及方法(Gradle7.3.3)
故障原因
:jvmJar任务执行失败是因为Gradle默认的Zip打包规范不支持单归档文件超过4GB的大小上限,你当前使用的7.3.3版本中,所有Zip、Jar类打包任务默认关闭zip64扩展,打包产物触达大小阈值时就会直接抛出异常中断构建。
配置方法
配置位置为项目根目录下的构建脚本:使用Groovy DSL时对应build.gradle文件,使用Kotlin DSL时对应build.gradle.kts文件,你可以按需选择单任务配置或者全局配置。
- 单任务配置(仅对jvmJar打包任务生效)
Groovy DSL写法:
Kotlin DSL写法:tasks.named('jvmJar') { zip64 = true }tasks.named<Jar>("jvmJar") { isZip64 = true } - 全局配置(对所有Zip、Jar类打包任务生效,多平台项目推荐使用,避免后续其他打包环节触发相同报错)
Groovy DSL写法:
Kotlin DSL写法:tasks.withType(Zip) { zip64 = true }tasks.withType<Zip> { isZip64 = true }
配置修改完成后,先终止当前正在运行的构建进程,执行
./gradlew clean清理历史构建产物缓存,再重新执行构建命令即可正常打包,该配置在你当前使用的Gradle 7.3.3版本中原生支持,无需升级版本。
内容的提问来源于stack exchange,提问作者Justin Chan
相关产品推荐
相关产品推荐

