It would really be good if we could get together at ApacheCon US and sort out 
the compilation problems. To me the current state of the FlexJS / Extern / 
Framework feels more and more like something MacGyver banged together. Hacks 
and patches and overrides all over the place ... I am trying to destil a 
default design pattern, but it seems impossible as there seem to be hacks and 
exceptions all over the place.

Problems I'm currently having:
- I seem to be unable to get around the problem of the missing TextField class 
when compiling the JavaScript
/Users/christoferdutz/Projects/Apache/Flex/flex-asjs/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as:160
The definition of base class TextField was not found.
        public class CSSTextField extends TextField

- If I skip the JavaScript generation I have to comment out line 70 of 
ApplicationBase as this seems to produce this error:
/Users/christoferdutz/Projects/Apache/Flex/flex-asjs/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ApplicationBase.as:70
Error: Call to a possibly undefined method info through a reference with static 
type Class.
                _info = c.info();

- If I skip the SWC compilation and want to continue with the Extern 
compilation I get the same problem as with the JavaScript compilation as the 
TextField is missing too.

- I can't detect if a module produces just an extern-swc, just an swc, a swc 
containing JavaScript or a mixture of this. Currently this logic is hard-coded 
in the build scripts, but I would like to make the builds simpler. What could 
help me detect what to build? The only thing I can automate is the generation 
of ActionScript code from JavaScript via externc (here you have to provide 
which files to include/exclude. If the number of files is empty the plugin does 
nothing)

- Config options that could be made in the config-xml files are added as 
arguments to the compiler. As we don't have a xml schema for the config files 
it's really hard to find out where to put stuff.

I was planning on talking about the new FlexJS compilation with Maven at 
ApacheCon, but it feels like I will have to fallback to the old talk about 
Flexmojos, but even with this I am in great doubt that it would actually still 
work. So it will be a theoretical talk about something that might come, but 
what I can talk about won't shed a good light on the project :-(

So I hope that at least my IoT + BlazeDS + Flex Talk will be cool :-(

Chris



________________________________________
Von: Alex Harui <aha...@adobe.com>
Gesendet: Dienstag, 3. Mai 2016 00:08:55
An: dev@flex.apache.org
Betreff: Re: AW: [FLEXJS] Problem compiling Core extern

On 5/2/16, 12:29 PM, "Christofer Dutz" <christofer.d...@c-ware.de> wrote:

>
>Hi Alex,
>
>I just had a look at the project, but I don't quite understand the
>reasoning behind the "CoreClasses" class. In SWF files I know only the
>classes transitively referenced by the main class are included, but for
>SWCs I always thought all classes were compiled as you never know which
>classes are needed.

That's mostly true, but there are exceptions.  In some cases a file may be
included in other files and thus not actually a class, in FlexJS, some
classes are only needed on one platform or the other.

>
>But even if it would work that way, why does the CSSTextFied have AS and
>JS blocks, if the class is only included in AS ... I have to admit,
>that's a little confusing :-(

Not sure why it has a JS block.  We've played with different ways of
dealing with platform-specific code.

-Alex

Reply via email to