2015-03-01 15 views
8

Haben Sie ein Android-Projekt in Eclipse arbeiten (4.4.2) ADT, auf Linux (Ubuntu 14.10) laufenNach dem Import von Eclipse Android Studio kann nicht ausgeführt werden konnte Execution für die Task ‚: App: dexDebug“

ich habe. importiert Android Studio (1.1.0) und schaffte es loszuwerden meiner ersten Kompilierungsfehlern erhalten

Das nächste, was ich will, ist d auf meinem Handy laufen -. ich die grüne Schaltfläche „ausführen“ und nach ein wenig drücken während ich einen Fehler erhalte (dies zeigt nicht, wenn ich nur ein Modul baue, nur wenn ich versuche zu laufen)

Der Fehler ist dies:

Ich habe die letzten 4 Stunden durch SO gesucht und nichts gefunden, was für mein Projekt relevant erscheint. Gibt es einen anderen Ort, an dem ich nach einem nützlicheren Fehler suchen kann?

EDIT: Aaarghh - nur das gesamte Projekt neu erstellt (anstatt dem Import-Assistenten zu vertrauen) - Ich erstellte ein neues Android Studio-Projekt, importierte meinen Code und Ressourcen und löste dann alle Kompilierungs- und Abhängigkeitsfehler. Zu einem klaren Build durchgekommen und dann versucht zu rennen .... derselbe verdammte Fehler! Genauso. Was mache ich falsch????

New build.gradle Referenz geschrieben:

buildscript { 
repositories { 
    maven { url 'https://maven.fabric.io/public' } 
} 

dependencies { 
    classpath 'io.fabric.tools:gradle:1.+' 
} 
} 
apply plugin: 'com.android.application' 
apply plugin: 'io.fabric' 

android { 
compileSdkVersion 21 
buildToolsVersion "21.1.1" 

defaultConfig { 
    applicationId "com.mycompany.app_Name" 
    minSdkVersion 15 
    targetSdkVersion 21 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
} 

repositories { mavenCentral() 
    maven { url 'https://maven.fabric.io/public' } } 

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.actionbarsherlock:actionbarsherlock:[email protected]' 
compile project(':swipeListView') 
compile 'com.sothree.slidinguppanel:library:3.0.0' 
compile files('libs/volley.jar') 
compile files('libs/libGoogleAnalyticsServices.jar') 
compile files('libs/commons-codec-1.8.jar') 
compile files('libs/linkedin-j-android.jar') 
compile files('libs/signpost-commonshttp4-1.2.1.1.jar') 
compile files('libs/signpost-core-1.2.1.1.jar') 
compile files('libs/twitter4j-core-4.0.1.jar') 
compile files('libs/core.jar') 
compile files('libs/gcm.jar') 
compile 'com.google.android.gms:play-services:6.5.87' 
compile 'com.facebook.android:facebook-android-sdk:3.20.0' 
compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
    transitive = true; 
} 
compile project(':myImportedProject') 
} 

versuchte sich auch als APK mit meinem Schlüsselspeicher zu exportieren: bekam einen ähnlichen Fehler:

Error:Execution failed for task ':app:dexRelease'. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/usr/lib/jvm/java-7-openjdk-amd64/bin/java'' finished with non-zero exit value 2

Antwort

0

Aha!

scheint die Antwort war weiter in Spur auf: Der Fehler war

com.android.dex.DexException: Multiple dex files define Lcom/nineoldandroids/animation/Animator$AnimatorListener;

So fand ich die Antwort hier:

ListViewAnimations Library Causes TOP-LEVEL-EXCEPTION

Ein Teil der Trick ist nicht nur die Zeile hinzufügen zu bauen.leitend sagen

compile files('libs/nineoldandroids-2.4.0.jar') 

aber auch zu entfernen die JAR aus dem Verzeichnis libs.

Jetzt habe ich mehr Verknüpfungsprobleme, aber ich lasse sie für eine andere Frage, denke ich.

+0

welche build.gradle fügen Sie das hinzu? die lib oder die app? Ich habe versucht, entweder eins und beide hinzuzufügen, immer noch nicht mir geholfen. habe das gleiche Problem @Kibi – Celly

+0

In meinem speziellen Fall habe ich es zum Build-Gradle der lib hinzugefügt. Im Grunde hatte ich (in Eclipse) ein importiertes Projekt für eine "SwipeListView", die das ninoldandroids jar in ihrem libs Verzeichnis hatte. Natürlich ist das mein Fall, denn das war mein Fehler. Ich denke, meine wichtigste "Einsicht" hier (die nicht zu hell ist) ist, dass der wahre Fehler ein wenig weiter oben in der Spur war.Die Meldung "Ausführung fehlgeschlagen für Task app: dexDebug" ist ungefähr so ​​nützlich wie "etwas Schlimmes ist passiert" und sollte eigentlich "höher für den echten Fehler schauen" sagen. – Kibi

1

Manchmal möchten Sie entfernen android Bibliotheken haben, die Sie in libs Ordner haben, während Sie in EclipseADT arbeiteten. Ich empfehle, android-support-v*.jar aus dem Ordner libs nach dem Importieren in das Android Studio-Verzeichnis zu entfernen.