7

我試圖將Google Plus集成到我的應用程序中,並顯示以下錯誤。下面是例外和gradlecom.android.build.transform.api.TransformException with android谷歌播放服務

錯誤:任務':app:transformClassesWithDexForDebug'的執行失敗。

com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

應用的build.gradle

apply plugin: 'com.android.application' 
apply plugin: 'com.google.gms.google-services' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "xxx.com.xxxx" 
     multiDexEnabled true 
     minSdkVersion 15 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 

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

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:23.0.1' 
    //depend-materialcalendar 
    compile 'com.prolificinteractive:material-calendarview:0.8.1' 
    compile 'com.android.support:gridlayout-v7:23.0.1' 
    compile 'com.android.support:cardview-v7:23.0.1' 
    compile 'com.melnykov:floatingactionbutton:1.3.0' 
    //depend-cometchat 
    compile 'com.yalantis:contextmenu:1.0.4' 
    compile 'com.google.code.gson:gson:2.3' 
    compile files('libs/appcompat_v7.jar') 
    compile files('libs/cometchat-sdk.jar') 
    compile files('libs/jsoup-1.7.3.jar') 
    compile files('libs/picasso-2.5.2.jar') 
    compile 'com.google.android.gms:play-services:8.1.0' 
    compile 'com.google.android.gms:play-services-base:8.1.0' 
    compile 'com.google.android.gms:play-services-maps:8.1.0' 
    compile files('libs/volley.jar') 
    compile files('libs/PayPalAndroidSDK.jar') 
    compile files('libs/gcm.jar') 
    compile 'com.soundcloud.android:android-crop:[email protected]' 
    compile 'com.facebook.android:facebook-android-sdk:4.6.0' 
    compile 'com.android.support:multidex:1.0.0' 
    compile 'com.google.android.gms:play-services-plus:8.1.0' 
    compile 'com.google.android.gms:play-services-identity:8.1.0' 

} 

項目的build.gradle

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.3.0' 
     classpath 'com.google.gms:google-services:1.4.0-beta3' 
     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

回答

14
  1. 嘗試清潔您的項目,然後重新建設。

  2. 嘗試在您的應用build.gradle文件中添加multiDexEnabled true。

    @Override 
    protected void attachBaseContext(Context base) { 
        super.attachBaseContext(base); 
        MultiDex.install(this); 
    } 
    

    在我的應用程序build.grade文件:

    defaultConfig { 
        multiDexEnabled true 
    } 
    
+2

搜索在谷歌開發者添加這些行..它說的應用程序的大小超過65K。我認爲這是真的,因爲剛剛現在與示例應用程序集成並且其工作正常 – srinu

+1

此外,這可能不是一個dex問題,根據此答案:http://stackoverflow.com/a/33026958/1174453刪除構建和應用程序/ build文件夾可能會解決這個問題 - 儘管我必須排除一個無用的支持-v4 lib,這個lib-sdk在這之前就會被拉進來,這意味着65k方法的限制至少部分在這裏播放。 –

+0

刪除生成文件夾並刪除支持庫爲我工作。 – Zapnologica

4

我對應用程序類中添加這

defaultConfig { 
    applicationId "com.example.android.exampleapp" 
    minSdkVersion 15 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    multiDexEnabled true 

} 

,並將此作爲依賴性:

 compile 'com.android.support:multidex:1.0.0' 

這解決了我的問題。謝謝

+0

非常感謝你兄弟.....我解決了它 –

3

當我將Android Gradle插件版本從1.3.0移到1.5.0時,我剛剛在當前項目中遇到同樣的問題。

錯誤是幾乎相同的一個,除了Java中的OP的錯誤返回錯誤代碼2.

如果最後變成了我有包含在應用程序的兩個不同的模塊相同的jar文件。

版本1.3.0可以在沒有問題的情況下處理此問題,對於版本1.5.0,我必須用包含jar文件的單個副本的單獨模塊的依賴項替換jar文件。

-3

只是刪除你的支持庫,也將努力

0

我曾嘗試與添加

multiDexEnabled true 

,但沒有奏效。那麼我已經將我的內部版本從23.0.2更改爲

buildToolsVersion "23.0.3" 

然後它工作。希望它可以幫助你。

0

嘗試在你的gradle這個

dexOptions { 
    javaMaxHeapSize "4g" 
}