Android Error Conversion to Dalvik format failed with error 1
来源:互联网 发布:网络弱电布线工程报价 编辑:程序博客网 时间:2024/05/22 04:27
由于原先用的是低版本的Maven,兼容的minSDK是Android2.3.3。而现在由于使用新版蓝牙BLE接口,将minSDK上调到Android API 18。岂料Maven打包报错,提示各种新API的系统符号未找到。
然后想到用gradle打包,去官网下载最新版的binary,发现无链接。到GitHub上下载源码发现速度只有3KB/s。
最后决定用proguardgui.bat进行混淆。
先导出该项目的jar包,然后使用proguardgui.bat进行混淆,然后再将混淆后的jar和这个项目中的其他第三方jar一起放到目标项目的libs目录下。编译一切正常,就在生成APK时报了如下错误:
[2016-09-21 15:30:26 - MainActivity] Dx UNEXPECTED TOP-LEVEL EXCEPTION:java.lang.RuntimeException: Exception parsing classes at com.android.dx.command.dexer.Main.processClass(Main.java:752) at com.android.dx.command.dexer.Main.processFileBytes(Main.java:718) at com.android.dx.command.dexer.Main.access$1200(Main.java:85) at com.android.dx.command.dexer.Main$FileBytesConsumer.processFileBytes(Main.java:1645) 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.process(ClassPathOpener.java:144) at com.android.dx.command.dexer.Main.processOne(Main.java:672) at com.android.dx.command.dexer.Main.processAllFiles(Main.java:574) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:311) at com.android.dx.command.dexer.Main.run(Main.java:277) at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:188) at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:786) at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:597) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:726) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:321) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:396) at org.eclipse.core.internal.resources.Project$1.run(Project.java:618) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344) at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597) at org.eclipse.core.internal.resources.Project.build(Project.java:124) at com.android.ide.eclipse.adt.internal.project.ProjectHelper.doFullIncrementalDebugBuild(ProjectHelper.java:1143) at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:155) at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:855) at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:704) at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1047) at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1251) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)Caused by: com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000) at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472) at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406) at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388) at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251) at com.android.dx.command.dexer.Main.parseClass(Main.java:764) at com.android.dx.command.dexer.Main.access$1500(Main.java:85) at com.android.dx.command.dexer.Main$ClassParserTask.call(Main.java:1684) at com.android.dx.command.dexer.Main.processClass(Main.java:749) ... 32 more[2016-09-21 15:30:26 - MainActivity] Dx 1 error; aborting[2016-09-21 15:30:26 - MainActivity] Conversion to Dalvik format failed with error 1
进过一番尝试才知道原来是JDK版本的问题导致的 “Dalvik format failed”。在混淆时,我用的是JDK1.8,而在编译项目的时候用的是默认的JDK1.6。之后我改用JDK1.6的JDK进行proguard,就可以成功生产APK并运行在手机上了。
0 0
- Android Error: Conversion to Dalvik format failed with error 1
- Android Error: Conversion to Dalvik format failed with error 1
- Android Error Conversion to Dalvik format failed with error 1
- [Android] conversion to dalvik format failed with error 1
- Android Conversion to Dalvik format failed with error 1
- android conversion to dalvik format failed with error 1
- [Android] conversion to dalvik format failed with error 1
- [Android] conversion to dalvik format failed with error 1
- 【Android 4.0】conversion to dalvik format failed with error 1
- [Android] conversion to dalvik format failed with error 1
- 【Android】Conversion to Dalvik format failed with error 1解决方案
- Android, eclipse Conversion to Dalvik format failed with error 1
- 【Android 4.0】conversion to dalvik format failed with error 1
- android proguard conversion to dalvik format failed with error 1
- android Conversion to Dalvik format failed with error 1
- Error: conversion to dalvik format failed with error 1
- error:Conversion to Dalvik format failed with error 1
- Conversion to Dalvik format failed with error
- P问题、NP问题和NPC问题
- 《NSURLSession-简介》
- Path路径查找
- 服务器跳转
- LeetCode 237: Delete Node in a Linked List
- Android Error Conversion to Dalvik format failed with error 1
- windows下修改jupyter notebook工作路径的简单方法
- Linux mount windows共享目录
- 多重背包基础
- 五,建造者模式
- Servlet生命周期
- 从零教你如何获取hadoop2.4源码并使用eclipse关联hadoop2.4源码
- 复习:方差分析
- 数论 -1 gcd之辗转相除法