我新推出的Android项目启动了一个新的默认项目。每次我尝试启动应用程序时都会发生此错误:
的build.gradle(模块:应用)
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.example.jdevani.validationdemo"
minSdkVersion 8
targetSdkVersion 21
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:21.0.3'
}
的build.gradle(项目:EmerGencyHelp)
// 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()
}
}
我的错误是
Information:Gradle tasks [:app:assembleDebug]
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugNdk UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72103Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42103Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava
Note: C:\Users\vfinava\Desktop\Project\EmerGencyHelp\app\src\main\java\com\example\vfinava\emergencyhelp\DataHelper.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
:app:preDexDebug
:app:dexDebug
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs;
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'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_20\bin\java.exe'' finished with non-zero exit value 2
Information:BUILD FAILED
Information:Total time: 5.684 secs
Information:1 error
Information:0 warnings
Information:See complete output in console
请帮帮我 提前谢谢,
答案 0 :(得分:4)
您可能没有在项目中正确添加suport-v4库 检查一下:
最后,如果这没有解决您的问题,请尝试从导入的库列表和项目模块依赖关系列表中删除此库并导入并再次从一个源添加到您的项目中,然后尝试重建项目或重新启动IDE 我希望这种方式可以帮助你:)
答案 1 :(得分:4)
当您使用使用不同版本的相同库时会发生此类问题。
从libs文件夹中删除supportv4.jar并在build.gradle
文件中添加以下行:
compile 'com.android.support:support-v4:21.0.3'
答案 2 :(得分:3)
日志跟踪说:Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs;
。这是由一些缓存引起的。您的代码没有任何问题。你只需要rebuild Project
或clean Project
,那么一切都会好的。
答案 3 :(得分:2)
这个问题不是因为JDK 1.8或1.7,而是由于依赖性。请检查您的Gradle Dependencies。
我遇到了类似的问题,在我的情况下,问题是由于Facebook依赖性而发生的
依赖{ ... ... ... ... ... //评论如下 编译' com.facebook.android:facebook-android-sdk:4.0.0' } 评论上面的一行后一切正常