如果有人知道这个,请帮忙.
app build.gradle
apply plugin: 'com.androID.application'androID { compileSdkVersion 22 buildToolsversion "21.1.2" defaultConfig { applicationID "in.xyz" minSdkVersion 15 targetSdkVersion 22 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:22.0.+' //compile files('libs/androID-support-v4.jar') compile 'com.androID.support:support-v4:22.0.+' compile 'com.androID.support:support-annotations:20.0.0'}
library build.gradle
apply plugin: 'com.androID.library'androID { compileSdkVersion 22 buildToolsversion "21.1.2" defaultConfig { minSdkVersion 15 targetSdkVersion 22 } buildTypes { release { MinifyEnabled false proguardfiles getDefaultProguardfile('proguard-androID.txt'),'proguard-rules.txt' } }}dependencIEs { //compile files('libs/androID-support-v4.jar') compile 'com.androID.support:support-v4:22.0.+' compile 'com.androID.support:support-annotations:20.0.0'}
的build.gradle
// top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositorIEs { jcenter() } dependencIEs { classpath 'com.androID.tools.build:gradle:1.1.0' // NOTE: Do not place your application dependencIEs here; they belong // in the indivIDual module build.gradle files }}allprojects { repositorIEs { jcenter() }}
…
UNEXPECTED top-LEVEL EXCEPTION: com.androID.dex.DexException: Multiple dex files define LandroID/support/annotation/AnimRes; at com.androID.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) at com.androID.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) at com.androID.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) at com.androID.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) at com.androID.dx.merge.DexMerger.merge(DexMerger.java:189) at com.androID.dx.command.dexer.Main.mergelibraryDexBuffers(Main.java:454) at com.androID.dx.command.dexer.Main.runMonoDex(Main.java:303) at com.androID.dx.command.dexer.Main.run(Main.java:246) at com.androID.dx.command.dexer.Main.main(Main.java:215) at com.androID.dx.command.Main.main(Main.java:106) Error:Execution Failed for task ': app:dexDeBUG'.
settings.gradle
include ':app'include ':multiStatetogglebutton'解决方法 我相信你的问题是无论你将库链接到主项目,你的支持库和注释都有相同的依赖关系.
如果您将库项目作为应用程序中的依赖项,则只需要将依赖项放在库依赖项闭包中.
问题是您有两个dex文件,因为有两个具有相同名称的文件,因为文件与您的依赖项重叠.
首先将模块复制到主项目的libs /文件夹,然后,
在主项目的根目录中创建settings.gradle文件:
include 'app_name','library_name'project(':librarynameGoesHere').projectDir = new file('libs/librarynameGoesHere')
对于您的库的build.gradle
dependencIEs { compile files('libs/androID-support-v4.jar') compile 'com.androID.support:support-v4:22.0.+' compile 'com.androID.support:support-annotations:20.0.0'}
然后为您的主项目build.gradle
dependencIEs { compile filetree(dir: 'libs',include: ['*.jar']) compile 'com.androID.support:appcompat-v7:22.0.+' compile project(":libs:librarynameGoesHere")}总结
以上是内存溢出为你收集整理的com.android.dex.DexException:多个dex文件定义Landroid / support / annotation / AnimRes;全部内容,希望文章能够帮你解决com.android.dex.DexException:多个dex文件定义Landroid / support / annotation / AnimRes;所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)