In this case I think it would make things a lot easier for me, if we introduced an Interface that all "Compiler" main classes implement. I'm talking about the default Flex compiler, Falcon, FlexJS and whatever other compiler there might be.
Was thinking of something like this: public interface Compiler { void compile(String[] args); } This way I wouldn't have to trick around using Reflection. Chris -----Ursprüngliche Nachricht----- Von: Christofer Dutz [mailto:christofer.d...@c-ware.de] Gesendet: Sonntag, 26. Oktober 2014 17:07 An: dev@flex.apache.org Betreff: AW: Adding support for FlexJS & FlexJX to Flexmojos 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] Gesendet: Sonntag, 26. Oktober 2014 16:32 An: dev@flex.apache.org 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> 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