相关疑难解决方法(0)

Gradle的冲突解决方案不适用于Android项目?

我正在尝试编译其依赖树看起来像的模块

+--- com.squareup.burst:burst-junit4:1.0.2
|    +--- com.squareup.burst:burst:1.0.2
|    \--- junit:junit:4.11 -> 4.12
|         \--- org.hamcrest:hamcrest-core:1.3
+--- com.android.support.test.espresso:espresso-core:2.0
|    +--- com.squareup:javawriter:2.1.1
|    +--- org.hamcrest:hamcrest-integration:1.1
|    |    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- org.hamcrest:hamcrest-library:1.1
|    |    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- com.android.support.test.espresso:espresso-idling-resource:2.0
|    +--- com.android.support.test:testing-support-lib:0.1
|    |    \--- junit:junit-dep:4.10
|    |         \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- com.google.code.findbugs:jsr305:2.0.1
|    +--- javax.annotation:javax.annotation-api:1.2
|    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
...
Run Code Online (Sandbox Code Playgroud)

正如您所看到的那样存在hamcrest-core版本冲突,但gradle似乎认识到冲突并应用其默认的"最新版本"策略,这正是我想要的.

但是,在尝试运行时assembleDebugTest(手动或通过Android Studio),我得到了

com.android.dex.DexException: Multiple dex files define Lorg/hamcrest/MatcherAssert;
Run Code Online (Sandbox Code Playgroud)

类似问题的一些答案暗示exclude …

android gradle android-gradle-plugin

5
推荐指数
1
解决办法
4847
查看次数

Gradle构建完成错误

我试图在Android Studio中运行我在Eclipse中的一个项目,但gradle插件让我很难,首先它说Gradle的支持版本不合适,然后我修改了build.gradle,现在当我尝试运行时它在最后说Gradle finished with 1 error,这是gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-2.2.1-   all.zip
Run Code Online (Sandbox Code Playgroud)

这是build.gradle:

buildscript {
repositories {
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:1.0.0'
}
}

apply plugin: 'android'

dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile 'com.android.support:appcompat-v7:19.1.0'
}

android {
compileSdkVersion 19
buildToolsVersion "22.0.1"

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
    }

    instrumentTest.setRoot('tests')

    debug.setRoot('build-types/debug')
    release.setRoot('build-types/release')
}
} …
Run Code Online (Sandbox Code Playgroud)

android gradle

2
推荐指数
1
解决办法
2万
查看次数

如何修复android多个dex文件定义异常

Android 4.2 ZBarCodescan java应用程序需要在Windows 7 x64计算机中编译.

它的源代码位于此处.

安装了Android Studio,并使用Gi​​thub import命令导入代码.在gradle文件中API已更改为23

compileSdkVersion 23 
Run Code Online (Sandbox Code Playgroud)

根据

如何使用github的eclipse项目进行Android开发

Android studio Build APK命令会产生异常

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:579)
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:535)
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:517)
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:164)
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:504)
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
    at com.android.dx.command.dexer.Main.run(Main.java:277)
    at com.android.dx.command.dexer.Main.main(Main.java:245)
    at com.android.dx.command.Main.main(Main.java:106)
Run Code Online (Sandbox Code Playgroud)

试图通过添加行来解决这个问题

dexOptions {
    preDexLibraries = false
}
Run Code Online (Sandbox Code Playgroud)

两个项目的gradle行根据

多个dex文件定义了Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat

导致错误

Uncaught translation error: java.lang.IllegalArgumentException: already added: Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoIcsImpl;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoJellyBeanMr2; …
Run Code Online (Sandbox Code Playgroud)

android gradle dex android-studio android-gradle-plugin

2
推荐指数
1
解决办法
6925
查看次数

无法执行dex:多个dex文件定义了Landroid/support/v4/accessibilityservice

我在SherLock执行时遇到错误.我尝试过很多东西,比如删除bin文件夹,再次构建项目,清理项目等等.但他们都没有工作.

请帮帮我.

安慰 :

Unable to execute dex: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
    [2014-04-14 16:26:12 - Navigation-drawer-page-sliding-tab-strip]
Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
Run Code Online (Sandbox Code Playgroud)

错误日志:

null
Error
Mon Apr 14 16:26:12 IST 2014
Unable to execute dex: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;

com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
    at com.android.dx.command.dexer.Main.run(Main.java:230)
    at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at …
Run Code Online (Sandbox Code Playgroud)

android

0
推荐指数
1
解决办法
7110
查看次数