Невозможно собрать сборку выпусков Android на Flash Builder 4.7 из-за сбоя инструмента dx
Несколько дней назад я обновил Oracle Java до 1.7.x на своем Mac (OS X 10.8)
С тех пор я больше не могу компилировать сборки Android-релизов из Adobe Flash Builder 4.7.
Я получаю ошибку:
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)
Я нашел несколько записей, касающихся инструмента dx в целом, к сожалению, ни одного в контексте Adobe Flash Builder, и ни одно из данных решений не помогло мне. Что меня удивляет, так это то, что Eclipse и java -version заявляют, что работают на JVM 1.6, предоставленной Apple. Так как же может помешать обновление Oracle?
Что я пробовал до сих пор:
Удаление Oracle Java с помощью инструкций с этой страницы: https://www.java.com/en/download/help/mac_uninstall_java.xml
Удаление и переустановка Apple JVM
Удаление и переустановка Flash Builder 4.7
Обновление файлов adb, aapt и dx.jar в Flex SDK (в моем случае Apache Flex 4.9.1 AIR 3.8) с использованием новейших версий из выпуска API 19 Android.
Ничего из этого безрезультатно.
Любые предложения, как поступить?
Спасибо,
Тимм
1 ответ
После недели поисков я наконец-то нашел душу, и это фактически не имело никакого отношения к любой версии Java...
Вместо этого виновником было неправильное встроенное расширение, которое я упаковал в приложение. Процесс сборки для этого должен был молча провалиться.
Восстановил.ane, и все снова работает.
Извините, что потратил впустую ваше время.