I understand and that's the right answer. Unfortunately some developers distribute only the ANE file without the accompany swc file and as it turns out it is possible to reference ANE file using external-library switch.
One possible workaround is simply to copy the ANE file and rename it to SWC.
But, maybe adding ane command along side merged, external, etc. can be more elegant solution.
I think for now the merged, external etc. scopes are sufficient.
But as you indicated in your bug report, GradleFx currently only
accepts swc-based dependencies, while it might make sense to also
accept the '.ane' based files since they're also accepted by the
external-library switch of the compiler (which GradleFx uses in the
So I'll just have to fix that bug I guess :)
I'll think about adding the 'ane' scope, not quite sure whether
I want that, although it sounds like it might have some benefits
(in terms of usability)
Are you sure that the extensionDir property is working?
I have this in my build.gradle:
platform = 'ios'
target = 'ipa-debug'
provisioningProfile = 'buildTools/development.mobileprovision'
platformSdk = ' ' // BUG workaround: if this is not here the iOS SDK will be set to "null"
extensionDir = 'anes'
(the anes directory has some .ANE files) But if I run gradle
clean packageMobile the extensionDir property seems to be ignored,
this is how mxmlc is invoked:
You're mixing up two things, the compilation of your project and
the packaging of it into a platform specific bundle (in your case
What you're seeing there are the options used during compilation
(mxmlc is the application compiler). Since the extensionDir
property only applies to the packaging of your application, it
won't show up in this compilation options list. There might be
another problem during compilation (try to run gradle with either
--info or --stacktrace). You probably didn't declare the required
ane's as dependencies.