天天看点

Android Studio v4,v7,v13包兼容问题,项目同时导入v7、v13包处理方法

最近在做个AS项目,同时用到了v7包和v13包,但是导入包的时候出错,提示两种错误:一种是包重复,一种如下:

Execution failed for task ':app:transformClassesWithDexForDebug'.

> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing java process with main class com.android.dx.command.Main with arguments {--dex --num-threads=4 --multi-dex --main-dex-list F:\Android\work\Aischool-1\app\build\intermediates\multi-dex\debug\maindexlist.txt --output F:\Android\work\Aischool-1\app\build\intermediates\transforms\dex\debug\folders\1000\1f\main F:\Android\work\Aischool-1\app\build\intermediates\transforms\jarMerging\debug\jars\1\1f\combined.jar}

解决方法(全部采用依赖包的形式):

1. 删除libs目录下v4,v7,v13有关的所有包

2.在build里边加入依赖包(项目用到了v7的recyclerview、cardview,v13的FragmentPagerAdapter)

    compile ('com.android.support:appcompat-v7:21.0.0')

    compile ('com.android.support:recyclerview-v7:21.0.0')

    compile ('com.android.support:cardview-v7:21.0.0')

    compile ('com.android.support:support-v13:21.0.0')

3.clean工程,run app,大功告成!

注意在第二步中的版本号,请因工程而异,我的依赖包版本是21.0.0,是因为我的build里边compileSdkVersion是21,请使用自己工程对应的版本。

AndroidStudio依赖包的版本可以本地查看,前提是Tools->Android->SDK Manager->SDK Tools下的Support Repository下的Android Support Repository是下载安装好了。

本地路径(对应自己SDK位置):F:\Android\android-sdk\extras\android\m2repository\com\android\support

点开需要依赖包的文件夹,下面可以看到各个版本号的文件夹列表。