a few days ago I updated Oracle Java to 1.7.x on my Mac (OS X 10.8)
Since then, I'm not able to compile any android release builds from Adobe Flash Builder 4.7 anymore.
The error I get is:
eclipse.buildId=M20110909-1335
java.version=1.6.0_65
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments: -keyring /Users/slim_tim/.eclipse_keyring -showlocation
Command-line arguments: -os macosx -ws cocoa -arch x86_64 -keyring /Users/slim_tim/.eclipse_keyring -consoleLog -showlocation
Error
Thu Jan 30 12:11:46 CET 2014
dx tool failed:
UNEXPECTED TOP-LEVEL EXCEPTION:
java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:128)
at java.util.zip.ZipFile.<init>(ZipFile.java:145)
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:206)
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131)
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
at com.android.dx.command.dexer.Main.processOne(Main.java:422)
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:333)
at com.android.dx.command.dexer.Main.run(Main.java:209)
at com.android.dx.command.dexer.Main.main(Main.java:174)
at com.android.dx.command.Main.main(Main.java:91)
1 error; aborting
java.lang.Exception
at com.adobe.flexbuilder.project.internal.FlexProjectCore.createErrorStatus(FlexProjectCore.java:1020)
at com.adobe.flexbuilder.util.logging.GlobalLogImpl.log(GlobalLogImpl.java:66)
at com.adobe.flexbuilder.util.logging.GlobalLog.log(GlobalLog.java:52)
at com.adobe.flexbuilder.multisdk.apollo.export.AIRAPKPackager.createUsingPackager(AIRAPKPackager.java:248)
at com.adobe.flexbuilder.multisdk.apollo.export.AIRAPKPackager.create(AIRAPKPackager.java:575)
at com.adobe.flexbuilder.multisdk.apollo.export.AIRAPKPackager.create(AIRAPKPackager.java:138)
at com.adobe.flexide.multiplatform.android.exportrelease.AndroidExportReleaseHandler.createPackage(AndroidExportReleaseHandler.java:354)
at com.adobe.flexide.multiplatform.android.exportrelease.AndroidExportReleaseHandler.doPackage(AndroidExportReleaseHandler.java:258)
at com.adobe.flashbuilder.project.multiplatform.ui.exportrelease.MultiPlatformExportReleaseVersionManager.doExport(MultiPlatformExportReleaseVersionManager.java:317)
at com.adobe.flexbuilder.exportimport.releaseversion.ui.ExportReleaseVersionWizard$1.run(ExportReleaseVersionWizard.java:221)
I found a few entries concerning dx tool in general, unfortunately none in the context of Adobe Flash Builder, and none of the given solutions did work for me. What puzzles me, is the fact, both Eclipse and java -version both state they run on JVM 1.6 provided by Apple. So how could the Oracle update possibly interfere with that?
What I tried so far:
Uninstalling Oracle Java by the instructions from this page: https://www.java.com/en/download/help/mac_uninstall_java.xml
Uninstalling and reinstalling Apple JVM
Uninstalling and reinstalling Flash Builder 4.7
Updating the adb , aapt and dx.jar files in the Flex SDK ( in my case Apache Flex 4.9.1 AIR 3.8 ) with the newest versions from the API 19 release of Android.
None of that to any avail.
Any suggestions how to proceed?
Thanks,
Timm
After a week of searching, I finally found the soultion, and it had in fact nothing to do with any Java Version ...
Instead the culprit was a misbuilt native extension I packaged into the app. The build process for this must have silently failed.
Rebuilt the .ane, and everything is working again.
Sorry for having wasted your time.