Hi Alex, thanks for explaining in more detail. But I have to admit that I'm really confused now ;-)
So after switching to the develop branch of flex-asjs the project actually contains stuff :-) Let me see if I understood things: Flex-jsas is a new implementation of a Flex framework core library for which both JavaScript as well as ActionScript implementations are available. Then there is flex-falcon which contains the actual falcon compiler in the "compiler" subdirectory. Everything in "compiler.js" is obsolete and I should ignore it. The parts I need for FlexJS is compiler plus compiler.jx ... is that correct? Hereby compiler contains a one-to-one replacement for the old compiler and compiler.jx contains the stuff for cross-compiling to JavaScript? If I use MXMLJSC for compiling instead of MXMLC I would produce JavaScriptb because it initializes Falcon with other "templates" for producing output? In this case a FlexJS build producing Flash output wouldn't be any different than a normal falcon compile, but using different framework libraries. Ist hat correct? If this was the case, I would need one more artifact for FalconJX and the set of dependencies for the FlexJX libraries. Chris -----Ursprüngliche Nachricht----- Von: Alex Harui [mailto:aha...@adobe.com] Gesendet: Montag, 27. Oktober 2014 05:26 An: dev@flex.apache.org Betreff: Re: AW: Adding support for FlexJS & FlexJX to Flexmojos FlexJS has evolved a bit and no longer overlays a Flex SDK. The current install script does borrow some files from a Flex SDK binary package, but now that i’m thinking about it, that may not be necessary anymore. I’m not a Maven expert, and haven’t really thought through how it works with Maven, but if you aren’t interested in making a set of files that will work in an SDK and will just create FlexJS SWFs and JS, it probably isn’t that hard to get it going. The current workflow for FlexJS is you take more MXML and AS and compile it against a different set of SWCs using Falcon to get a SWF. Some different compile flags are required and you can find them by comparing the flex-config.xml for FlexJS against one from a regular Flex SDK. I think you can use what you have for Falcon to generate this SWF. Then, once the SWF is built and tested, folks then generate the HTML/JS/CSS/SVG version. This is done by compiling with the jars produced in Falcon’s compiler.jx project with the command-line options you should find if the FlexJS repo in js/bin/mxmlc. The mxmlc jar in compiler.jx not depends on the falcon jars in the compiler project, and the Google Closure Library jar. The same SWCs used to build the SWF get used, but in addition, every -sdk-js-lib option specifies a folder full of .js files that represent the JS version of the classes in the SWCs. There is not currently a one-to-one relationship between a folder of .js files and a single SWC, but I suppose we could do that if needed. Let me know if you have more questions. You can also look at the ant scripts used to compile the examples folder in the flex-asjs repo. -Alex On 10/26/14, 12:58 PM, "Christofer Dutz" <christofer.d...@c-ware.de> wrote: >Hi Erik, > >thanks for the details ;-) > >But all is happening in the flex-falcon project. Am I correct? >Here I already created maven artifacts from the "compiler" module, >which seems to be Falcon itself. >Then there are compiler.js and compiler.jx both seem to contain a >org.apache.flex.compiler.clients.MXMLJSC >I coudln't find any FlexJS JS or AS or whatsoever libraries. > >It is my goal to have maven artifacts on any libraries bundled in a way >that there is no need for any overlaying or other trickery. > >But I still need a little help with getting up to speed with everything >:-) > >Chris > > >-----Ursprüngliche Nachricht----- >Von: Erik de Bruin [mailto:e...@ixsoftware.nl] >Gesendet: Sonntag, 26. Oktober 2014 18:31 >An: dev@flex.apache.org >Betreff: Re: Adding support for FlexJS & FlexJX to Flexmojos > >Just to make this conversation a bit clearer: there is no FlexJS jar. >The Java part of FlexJS - which is the cross compiler - is named FalconJX. > >FlexJS is the combination of FalconJX, the AS SDK, the JS SDK as well >as the Google Closure Compiler, which is an external dependency. In >addition to these parts, FlexJS needs to be installed as an overlay of >a regular Flex SDK, which in turn is kinda ‘stripped and rebuild’ to >accommodate the various FlexJS parts. Finally the whole process is tied >together and made accessible for the end user by offering a few .launch >files to be used with Flash Builder. > >Maybe Alex can explain this a bit better, he is the lead architect of >FlexJS. I just keep busy hacking FalconJX to get VF2JS (my own hobby >alternative to FlexJS) off the ground. > >EdB > > > >On Sun, Oct 26, 2014 at 5:43 PM, Christofer Dutz ><christofer.d...@c-ware.de> >wrote: > >> It's nothing Maven-Special I'm talking about. It's just some plain >> old Java jar dependency thing. >> I would like to have FlexJS as an addition to Falcon. So assuming a >> project allready has Falcon, by adding the FlexJS jar, the user would >> be able to use FlexJS. >> >> I've tried compiling FlexJS several times now, but it keeps on >> failling with java compile errors. >> >> Oh well ... I really really hope that I get a first running example >> working in the next one or two weeks ... I'm sort of slightly >> starting to pannic when I'm thinking about the ApacheCon. I wouldn't >> have dreamed that there were so many rocks to move before finally >> being able to build FlexJS applications with Flexmojos. But I'm >> finally seing the finishing line :-) >> >> Chris >> >> >> -----Ursprüngliche Nachricht----- >> Von: Erik de Bruin [mailto:e...@ixsoftware.nl] >> Gesendet: Sonntag, 26. Oktober 2014 17:21 >> An: dev@flex.apache.org >> Betreff: Re: Adding support for FlexJS & FlexJX to Flexmojos >> >> I know nothing about Maven and/or FlexMojos. All I can think of to >> help you along is to look at how FlexJS is set up during >> installation, and how it uses Flash Builder .launch files to do it's >> thing when publishing a project. >> >> EdB >> >> >> >> On Sunday, October 26, 2014, Christofer Dutz >> <christofer.d...@c-ware.de> >> wrote: >> >> > So how would I setup this scenario? >> > I have a flexjs-compiler jar artifact that has dependencies on >> > falcon-compiler.jar? >> > Would I add an additional flexjs-compiler artifact to the rest and >> > somehow tell Flexmojos which compiler implementation class it >> > should use? Having a look at the code, I think it would be an >> > option to have >> something like this: >> > >> > <build> >> > <sourceDirectory>src/main/flex</sourceDirectory> >> > <plugins> >> > <plugin> >> > <groupId>net.flexmojos.oss</groupId> >> > <artifactId>flexmojos-maven-plugin</artifactId> >> > <version>7.1.0-SNAPSHOT</version> >> > <extensions>true</extensions> >> > <dependencies> >> > <dependency> >> > <groupId>org.apache.flex.compiler</groupId> >> > <artifactId>falcon-compiler</artifactId> >> > <version>0.0.3-SNAPSHOT</version> >> > </dependency> >> > </dependencies> >> > </plugin> >> > </plugins> >> > </build> >> > >> > For normal compilation and something like this for fle >> > >> > <build> >> > <sourceDirectory>src/main/flex</sourceDirectory> >> > <plugins> >> > <plugin> >> > <groupId>net.flexmojos.oss</groupId> >> > <artifactId>flexmojos-maven-plugin</artifactId> >> > <version>7.1.0-SNAPSHOT</version> >> > <extensions>true</extensions> >> > <configuration> >> > <compiler>flexjs </sourceFile> >> > </configuration> >> > <dependencies> >> > <dependency> >> > <groupId>org.apache.flex.compiler</groupId> >> > <artifactId>falcon-compiler</artifactId> >> > <version>0.0.3-SNAPSHOT</version> >> > </dependency> >> > <dependency> >> > <groupId>org.apache.flex.compiler</groupId> >> > <artifactId>falcon-js </artifactId> >> > <version>0.0.3-SNAPSHOT</version> >> > </dependency> >> > </plugin> >> > </plugins> >> > </build> >> > >> > Then I would need some code in Flexmojos to use MXMLJSC instead of >>MXMLC. >> > So it seems there is no change needed to the Framework? >> > >> > Chris >> > >> > >> > >> > >> > >> > -----Ursprüngliche Nachricht----- >> > Von: Erik de Bruin [mailto:e...@ixsoftware.nl <javascript:;>] >> > Gesendet: Sonntag, 26. Oktober 2014 16:32 >> > An: dev@flex.apache.org <javascript:;> >> > Betreff: Re: Adding support for FlexJS & FlexJX to Flexmojos >> > >> > FalconJX takes care of the cross compilation to JS. This is a >> > separate project in the flex-falcon repository. It basically uses >> > Falcon to create the AST and then traverses that to create >> > Javascript. To complicate >> > matters: this Javascript is then passed to the Google Closure >> > Compiler for optimalisation and minification ;-) >> > >> > EdB >> > >> > >> > >> > On Sunday, October 26, 2014, Christofer Dutz >> > <christofer.d...@c-ware.de <javascript:;>> >> > wrote: >> > >> > > Hi, >> > > >> > > well I'll currently treat my work on supporting Flacon as done >> > > and now want to concentrate on supporting the first JavaScript >> > > output support to >> > it. >> > > I could need a little help getting started with this. >> > > >> > > Assuming I was building a classic Falcon application, how exactly >> > > is the JavaScript output triggered? Is there a commandline switch >> > > for this? Does the compiler simply need an additional Jar (Or >>multiple)? >> > > What changes in the FDK are needed? >> > > >> > > Chris >> > > >> > > >> > >> > -- >> > Ix Multimedia Software >> > >> > Jan Luykenstraat 27 >> > 3521 VB Utrecht >> > >> > T. 06-51952295 >> > I. www.ixsoftware.nl >> > >> >> >> -- >> Ix Multimedia Software >> >> Jan Luykenstraat 27 >> 3521 VB Utrecht >> >> T. 06-51952295 >> I. www.ixsoftware.nl >> > > > >-- >Ix Multimedia Software > >Jan Luykenstraat 27 >3521 VB Utrecht > >T. 06-51952295 >I. www.ixsoftware.nl