android - 无法在Android Studio中生成签名的APK, 'java.io.IOException'

标签 android gradle build apk

我在Android Studio中生成签名的APK时遇到问题。

Error:Execution failed for task ':app:transformClassesWithMultidexlistForDebug'. java.io.IOException: Can't write [C:\Users\Ahmed\StudioProjects\android1\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\Ahmed.gradle\caches\transforms-1\files-1.1\support-compat-25.2.0.aar\8a6c38a056e2992b7f752213fb56ad15\jars\classes.jar(;;;;;;.class)] (Duplicate zip entry [classes.jar:android/support/v4/view/ViewCompat.class]))


apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '26.0.2'

defaultConfig {
    applicationId "com.ahmedkarray.switchsides.colorsdash"
    minSdkVersion 16
    targetSdkVersion 25
    multiDexEnabled true

    ndk {
        moduleName "player_shared"
    }
}

buildTypes {
    release {
        minifyEnabled false
        shrinkResources false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }


}
sourceSets.main {
    jni.srcDirs = []// <-- disable automatic ndk-build call
}
}
android{


configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
    all*.exclude group: 'com.android.support', module: 'support-annotations'
}
}

dependencies {
compile 'com.android.support:multidex:1.0.1'
compile ('com.google.android.gms:play-services:+'){exclude module: 'support-v4'}
compile files('libs/dagger-1.2.2.jar')
compile files('libs/javax.inject-1.jar')
compile files('libs/nineoldandroids-2.4.0.jar')
compile files('libs/support-v4-19.0.1.jar')
compile ('com.android.support:multidex:1.0.1')
compile 'com.android.support:support-annotations:27.0.2'
}

最佳答案

这样改变你的依赖

dependencies {
    compile 'com.android.support:multidex:1.0.1'
    compile ('com.google.android.gms:play-services:+'){
       exclude module: 'support-v4'
    }
    compile files('libs/dagger-1.2.2.jar')
    compile files('libs/javax.inject-1.jar')
    compile files('libs/nineoldandroids-2.4.0.jar')
    compile 'com.android.support:support-v4:27.0.2'
    compile 'com.android.support:mediarouter-v7:27.0.2'
    compile 'com.android.support:support-compat:27.0.2'
    compile 'com.android.support:support-core-ui:27.0.2'
    compile 'com.android.support:appcompat-v7:27.0.2'
    compile 'com.android.support:support-annotations:27.0.2'
}

修改也可以编译
android {
   compileSdkVersion 27

并从您的libs文件夹中删除support-v4-19.0.1.jar

关于android - 无法在Android Studio中生成签名的APK, 'java.io.IOException',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47722666/

相关文章:

android - android studio有没有vi编辑器

android - Volley 库是否按顺序处理所有请求

java - 多模块java maven项目的标准结构

android - RxJava - 按子数据结构分组

android - 多个图像进度条加载就像在 Whats App 中一样

java - 如何修复 "com.google.cloud.tools.appengine.AppEngineException: java.nio.file.NoSuchFileException: ...\exploded-{project}\WEB-INF\appengine-web.xml"

gradle - 如何使用Gradle配置MarkLogic数据库备份?

gradle - 找不到插件[id: 'com.github.johnrengelman.shadow',版本: '5.2.0']

database - 如何从现有数据库数据生成 Symfony 固定装置 YAML?

build - Leiningen 在构建工作 uberjar 时遇到问题