Einheit-Android - _ CommandInvokationFailure: Unable to convert Klassen in das dex-format
ich bin mit Windows 7, jdk 1.8.0 (64bit), jre 8 (64bit), Pro Einheit 4.3.4f1-und Android-SDK-22.6.1
Alle Software aktualisiert werden.
Alles funktioniert einwandfrei, aber wenn ich StartApp sdk, kommt dieser Fehler. Keine zusätzlichen plugins, nur das SDK zur Verfügung gestellt von der StartApp ad.
Error building Player: CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details.
C:\Program Files\Java\jdk1.8.0\bin\java.exe -Xmx1024M -Dcom.android.sdkmanager.toolsdir="D:/android-sdks\tools" -Dfile.encoding=UTF8 -jar "C:/Program Files (x86)/Unity/Editor/Data/BuildTargetTools/AndroidPlayer\sdktools.jar" -
stderr[
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: Lcom/unity3d/player/a$1;
at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:122)
at com.android.dx.dex.file.DexFile.add(DexFile.java:161)
at com.android.dx.command.dexer.Main.processClass(Main.java:685)
at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
at com.android.dx.command.dexer.Main.access$600(Main.java:78)
at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
at com.android.dx.command.dexer.Main.processOne(Main.java:596)
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
at com.android.dx.command.dexer.Main.run(Main.java:230)
at com.android.dx.command.dexer.Main.main(Main.java:199)
at com.android.dx.command.Main.main(Main.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at SDKMain.main(SDKMain.java:129)
1 error; aborting
]
Ich habe bereits versucht JAVA_OPT und JAVA_HOME Lösungen. Aber konnte immer noch nicht gelöst
Du musst angemeldet sein, um einen Kommentar abzugeben.
Lief ich in diese mit IntelliJ 13.1.4, JDK 1.6, aber ich würde vermuten, dass dies verursacht wird durch die gleiche Sache auf jedem anderen IDE -> classes.jar verwiesen/aufgenommen, mehr als einmal.
Überprüfen und stellen Sie sicher, dass die classes.jar die Sie zum Projekt Hinzugefügt (aus Unity\Editor\Data\PlaybackEngines\androidplayer\bin\classes.jar) nicht verwiesen/aufgenommen, mehr als einmal. Wenn Sie in Datei->Projekt-Struktur:
Sollte es nur eine "Klassen" unter Bibliotheken.
Es sollte KEINE Referenz auf die Klassen unter Artefakte (Artefakte erstellen Sie das plugin .jar-Datei).
Schauen Sie sich diese ähnlichen Antwort ->
https://stackoverflow.com/a/8437996/3464367
Mein Problem war tatsächlich auf die mit doppelten Dateien. Naja, nicht wirklich Duplikate, aber ich hatte 2 adMob sdk-Pakete (verschiedene Versionen), wurden in Konflikt geraten. Nach dem löschen der ältere, war alles behoben. Verwenden Sie 3rd-party-SDK oder ähnliches, wenn so, versuchen, entfernen Sie, wenn möglich, und sehen, ob das Problem weiterhin besteht. Versuchen Sie herauszufinden, welcher Teil des Codes verursacht dies geschehen kann. Man könnte schließlich versuchen, kompilieren Sie ein leeres Projekt nur für die Prüfung.
Heute habe ich gelöst ähnliches problem bei der Error building Player: CommandInvokationFailure: Unable to convert Klassen in das dex-format. Siehe Konsole für details. mit hinzufügen .jar Datei in Plugins\Android\
Ich habe verschiedene Arten von Fehlern:
Mein Ergebnis funktionierende Lösung war ähnlich wie diese:
Code, der hier lebt:
Ich tun:
Vergessen Sie nicht, vergleichen Sie Ihre "Mindest-Api-Level" in der Player-Einstellung. Für mich war es Android 4.0.3 ... (15)