升级Kotlin至1.9.10后出现zip END header not found构建失败求助
Kotlin 1.9.10升级后构建失败:zip END header not found
项目原本在Kotlin 1.8.10环境下正常运行,升级至1.9.10后出现构建失败,核心错误为zip END header not found,具体错误日志如下:
FAILURE: Build completed with 3 failures. 1: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:kspDebugKotlin'. > Could not resolve all files for configuration ':app:detachedConfiguration11'. > Failed to transform kotlin-stdlib-1.9.10.jar to match attributes {artifactType=classpath-entry-snapshot, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}. > Execution failed for ClasspathEntrySnapshotTransform: C:\Users\r1n1os\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.9.10\72812e8a368917ab5c0a5081b56915ffdfec93b7\kotlin-stdlib-1.9.10.jar. > zip END header not found * 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. ============================================================================== 2: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:checkDebugDuplicateClasses'. > Could not resolve all files for configuration ':app:debugRuntimeClasspath'. > Failed to transform kotlin-stdlib-1.9.10.jar (org.jetbrains.kotlin:kotlin-stdlib:1.9.10) to match attributes {artifactType=enumerated-runtime-classes, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}. > Execution failed for EnumerateClassesTransform: C:\Users\r1n1os\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.9.10\72812e8a368917ab5c0a5081b56915ffdfec93b7\kotlin-stdlib-1.9.10.jar. > zip END header not found * 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. ============================================================================== 3: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:mergeDebugNativeLibs'. > Could not resolve all files for configuration ':app:debugRuntimeClasspath'. > Failed to transform kotlin-stdlib-1.9.10.jar (org.jetbrains.kotlin:kotlin-stdlib:1.9.10) to match attributes {artifactType=android-jni, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}. > Execution failed for ExtractJniTransform: C:\Users\r1n1os\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.9.10\72812e8a368917ab5c0a5081b56915ffdfec93b7\kotlin-stdlib-1.9.10.jar. > zip END header not found * 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 16s 25 actionable tasks: 3 executed, 22 up-to-date
已尝试的解决方法
- 删除项目根目录下的
.gradle目录 - 手动下载gradle-8.3-bin.zip文件
- 执行Android Studio的Invalidate Cache操作
Gradle配置文件
模块级build.gradle
plugins { id("com.android.application") id ("kotlin-android") id("org.jetbrains.kotlin.android") kotlin("kapt") id("com.google.devtools.ksp") id("com.google.dagger.hilt.android") } android { namespace = "com.example.rockets" compileSdk = 34 defaultConfig { applicationId = "com.example.rockets" minSdk = 27 targetSdk = 34 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary = true } } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = JavaVersion.VERSION_17.toString() } buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.3" } packaging { resources { excludes += "/META-INF/{AL2.0,LGPL2.1}" } } buildToolsVersion = "33.0.1" } var hiltVersion by extra("2.46.1") var hiltCompilerVersion by extra( "1.0.0") var retrofitVersion by extra("2.9.0") val roomVersion by extra ("2.5.2") val coroutines by extra("1.7.1") val coroutinesLifecycle by extra("2.6.2") val composeNavigation by extra ("2.7.3") dependencies { //compose //implementation("androidx.activity:activity-compose:1.7.2") implementation(platform("androidx.compose:compose-bom:2023.03.00")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") implementation("androidx.compose.material3:material3") implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.6.2") implementation("androidx.compose.runtime:runtime-livedata:1.5.1") implementation("androidx.navigation:navigation-compose:$composeNavigation") implementation("androidx.hilt:hilt-navigation-compose:1.0.0") //Hilt implementation("com.google.dagger:hilt-android:$hiltVersion") kapt("com.google.dagger:hilt-android-compiler:2.44") //Network Manager implementation ("com.squareup.retrofit2:retrofit:$retrofitVersion") implementation ("com.squareup.retrofit2:converter-gson:$retrofitVersion") //Local database Manager implementation("androidx.room:room-runtime:$roomVersion") implementation("androidx.room:room-ktx:$roomVersion") ksp("androidx.room:room-compiler:$roomVersion") //Coroutines implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines") // Coroutine Lifecycle Scopes implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$coroutinesLifecycle") implementation("androidx.lifecycle:lifecycle-runtime-ktx:$coroutinesLifecycle") implementation("androidx.core:core-ktx:1.12.0") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.2") //Glide implementation ("com.github.bumptech.glide:compose:1.0.0-alpha.5") // Test testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") androidTestImplementation(platform("androidx.compose:compose-bom:2023.03.00")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") } kapt { correctErrorTypes = true }
项目根目录build.gradle
plugins { id("com.android.application") version "8.1.2" apply false id("org.jetbrains.kotlin.android") version "1.9.10" apply false id("com.google.dagger.hilt.android") version "2.44" apply false id("com.google.devtools.ksp") version "1.9.10-1.0.13" apply false }
问题分析与解决方案
核心原因
zip END header not found表明下载的kotlin-stdlib-1.9.10.jar文件已损坏,可能是缓存清理不彻底、下载过程中断或者镜像源不稳定导致的。此外,依赖版本不匹配也可能加剧构建问题。
具体解决步骤
彻底清理缓存
- 关闭Android Studio
- 删除以下目录:
- 项目根目录下的
.gradle文件夹 - 用户目录下的
.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.9.10文件夹 - 项目的
build文件夹
- 项目根目录下的
- 重新打开Android Studio,执行
File -> Invalidate Caches...,选择Invalidate and Restart
优化Gradle下载源
在项目根目录的settings.gradle中添加国内镜像源,提升下载稳定性:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // 添加阿里云镜像 maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'https://maven.aliyun.com/repository/public' } } }修复依赖版本不匹配问题
- Hilt版本统一:当前
hilt-android用的是2.46.1,但hilt-android-compiler用的是2.44,版本不兼容,需统一为2.46.1:kapt("com.google.dagger:hilt-android-compiler:$hiltVersion") - Room版本升级:Room 2.5.2对Kotlin 1.9.x的支持有限,建议升级至2.6.0及以上版本(比如2.6.1),确保和Kotlin 1.9.10兼容:
val roomVersion by extra ("2.6.1") - 根目录Hilt插件版本同步:根目录build.gradle中Hilt插件版本改为2.46.1,和依赖版本一致:
id("com.google.dagger.hilt.android") version "2.46.1" apply false
- Hilt版本统一:当前
重新构建项目
完成上述修改后,点击Android Studio右上角的Sync Project with Gradle Files按钮,同步完成后执行构建操作。
内容的提问来源于stack exchange,提问作者v4or1s
相关产品推荐
相关产品推荐

