Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

old dx.jar in AIR SDK #44

Closed
myflashlab opened this issue Sep 3, 2018 · 7 comments
Closed

old dx.jar in AIR SDK #44

myflashlab opened this issue Sep 3, 2018 · 7 comments

Comments

@myflashlab
Copy link

Problem Description

The dx.jar file located at /Users/user/Documents/AIR_30.107/lib/android/bin/dx.jar is too old and needs to be updated to at least V27.0.3. Some third party Android libraries like the tensorflow library will throw an error like below:

This will be a problem when developing ANEs like Firebase MLKIT which are using tensorflow library.

dx tool failed:<br>UNEXPECTED TOP-LEVEL EXCEPTION:<br>com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)<br>	
at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)<br>	
at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)<br>	
at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)<br>	
at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)<br>	
at com.android.dx.command.dexer.Main.processClass(Main.java:709)<br>	
at com.android.dx.command.dexer.Main.processFileBytes(Main.java:678)<br>	
at com.android.dx.command.dexer.Main.access$300(Main.java:83)<br>	
at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:607)<br>	
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)<br>	
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)<br>	
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)<br>	
at com.android.dx.command.dexer.Main.processOne(Main.java:637)<br>	
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:506)<br>	
at com.android.dx.command.dexer.Main.runMultiDex(Main.java:335)<br>	
at com.android.dx.command.dexer.Main.run(Main.java:245)<br>	
at com.android.dx.command.dexer.Main.main(Main.java:215)<br>	
at com.android.dx.command.Main.main(Main.java:106)<br>
...while parsing org/tensorflow/lite/DataType$1.class<br>1 error; aborting

Steps to Reproduce:

Include the following ANE in your project and try to compile your AIR app. you will see the above error message.

<extensionID>com.myflashlab.air.extensions.dependency.tensorflow</extensionID>

Workarounds:

You could bypass the problem by overwritting the dx.jar file from the one in Android SDK /Users/user/Library/Android/sdk/build-tools/27.0.3/lib/dx.jar. This will solve the problem. but still, it makes sense if the AIR SDK has the latest version itself.

This bug is listed on tracker.adobe.com also. please vote here: https://tracker.adobe.com/#/view/AIR-4198726

@PrimaryFeather
Copy link
Contributor

Voted!

@gsario
Copy link

gsario commented Sep 3, 2018

Voted too!

@marchbold
Copy link
Collaborator

Voted!

Seems Adobe need consistent reminders to update the Android build tools, I think we've already been through 2 or 3 requests for this. Hopefully they are quicker this time.

@appearance
Copy link

Man...me to voted.

@Xgamefactory
Copy link

Voted!

Seems Adobe need consistent reminders to update the Android build tools, I think we've already been through 2 or 3 requests for this. Hopefully they are quicker this time.

Adobe needs experienced engineers )

@tuarua
Copy link

tuarua commented Jul 4, 2019

This appears to be fixed in AIR33 beta HARMAN Ref AIR-151 so can be closed

@Xgamefactory
Copy link

fixed after a year almost ) we have moved to flutter. adobe air is not reliable anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants