【问题标题】:Android Studio: Duplicate files copied in APK project.propertiesAndroid Studio:在 APK project.properties 中复制的重复文件
【发布时间】:2017-10-24 11:32:59
【问题描述】:

将 Google Translate API compile 'com.google.cloud:google-cloud-translate:0.18.0-beta' 添加到我的项目后,我遇到了一个奇怪的错误

错误:任务“:ParseStarterProject:transformResourcesWithMergeJavaResForDebug”执行失败。 com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException:在 APK project.properties 中复制的文件重复 文件1:.gradle/caches/modules-2/files-2.1/com.google.cloud/google-cloud-translate/0.18.0-beta/9cac04f2bb48f76f352bf65d782506e4aa18406c/google-cloud-translate-0.18.0-beta.jar 文件2:/.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 帖子提到“在 APK META_INF 中复制的重复文件”或“在 APK LICENSE.txt 中复制的重复文件”等

但是,我没有看到其他人遇到错误“在 APK project.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”来修复此错误?

GRADLE

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'
  }

【问题讨论】:

    标签: android gradle google-api android-gradle-plugin google-translate


    【解决方案1】:

    就我而言,

    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
    }
    

    【讨论】:

      【解决方案2】:

      移除谷歌云核心依赖

      在添加翻译依赖时这样做

      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'
      }
      

      【讨论】:

      • 有趣的是我从来没有添加谷歌云核心依赖。
      • 发布 gradle 文件
      • 发布的 gradle 文件
      猜你喜欢
      • 1970-01-01
      • 2017-09-21
      • 1970-01-01
      • 2017-04-13
      • 1970-01-01
      • 1970-01-01
      • 2014-01-16
      • 2015-02-14
      相关资源
      最近更新 更多