提问者:小点点

Android Studio:复制的重复文件在APKproject.properties


在我的项目中添加了谷歌翻译APIcompile'com.google.cloud: google-cloud-不翻译:0.18.0-beta'后,我收到了一个奇怪的错误

错误:执行失败的任务': ParseStarterProject:transformResourcesWellMergeJavaResForDebug'.com.android.build.api.transform.TransformException:com.android.builder.pack.DuplicateFileException:重复文件复制APKproject.propertiesFile1:.gradle/缓存/module-2/files-2.1/com.google.cloud/google-cloud-translate/0.18.0-beta/9cac04f2bb48f76f352bf65d782506e4aa18406c/google-cloud-translate-0.18.0-beta.jarFile2: /.gradle/caches/modules-2/files-2.1/com.google.cloud/google-cloud-core/1.0.2/ff451b4b785369093bd91d277c22576fc9c1da3a/google-cloud-core-1.0.2.jar

还有其他SO帖子提到"重复文件复制在APKMETA_INF",或"重复文件复制在APKLICENSE. txt"等

然而,我还没有看到其他人遇到错误"复制的重复文件在APKproject.properties"

把这些加到我的Gradle里不管用

packagingOptions {
  exclude 'META-INF/LICENSE'
  exclude 'META-INF/io.netty.versions.properties'
  exclude 'META-INF/INDEX.LIST'
  exclude 'META-INF/DEPENDENCIES'
  exclude 'META-INF/NOTICE'
  exclude 'META-INF/LICENSE.txt'
  exclude 'META-INF/NOTICE.txt'
}

是否还有其他可以添加到我的gradle中以修复此错误的内容?或者是否有其他方法可以通过删除错误日志中所示的“FILE2”来修复此错误?

年级

apply plugin: 'com.android.application'

android {
 useLibrary 'org.apache.http.legacy'
 packagingOptions {
   // exclude 'META-INF/LICENSE'
   //exclude 'META-INF/io.netty.versions.properties'
   //exclude 'META-INF/INDEX.LIST'
 }

compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
    multiDexEnabled true
    applicationId "com.package.name"
    minSdkVersion rootProject.ext.minSdkVersion
    targetSdkVersion rootProject.ext.targetSdkVersion
    versionCode 41
    versionName "2.1"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
lintOptions {
    disable 'MissingTranslation'
    disable 'ExtraTranslation'
}
dexOptions {
    javaMaxHeapSize "4g"
}

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.google.firebase:firebase-core:10.2.0'
    compile 'com.google.firebase:firebase-messaging:10.2.0'
    //noinspection GradleCompatible
    compile 'com.google.cloud:google-cloud-translate:0.18.0-beta'
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support:design:25.3.1'
    compile 'com.parse.bolts:bolts-tasks:1.3.0'
    compile 'com.parse:parse-android:1.13.0'
    compile 'com.android.support:multidex:1.0.1'
    //noinspection GradleDynamicVersion
    compile 'com.facebook.android:facebook-android-sdk:[4,5)'
    //noinspection GradleCompatible
    compile 'com.google.android.gms:play-services-ads:10.2.0'
    // compile 'com.onesignal:OneSignal:3.4.3@aar'

  }


 }
apply plugin: 'com.google.gms.google-services'
 dependencies {
 compile 'com.android.support.constraint:constraint-layout:1.0.1'
  }

共2个答案

匿名用户

在我的情况下,

packagingOptions {
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/io.netty.versions.properties'
    exclude 'META-INF/INDEX.LIST'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    exclude 'project.properties' <------------------------here
}

匿名用户

删除谷歌云核心依赖

在添加翻译依赖时这样做

compile ('com.google.cloud:google-cloud-translate:0.5.0') {
    exclude group: 'io.grpc', module: 'grpc-all'
    exclude group: 'com.google.protobuf', module: 'protobuf-java'
    exclude group: 'com.google.api-client', module: 'google-api-client-
    appengine'
}