Ok ... so I do actually get further when compiling without the playerglobal hack, but using the maven scope "external" instead. Unfortunately it seems I'm only able to compile swcs with this. I do get swfs out of the build, but these are not runable. So I guess I will have to re-apply the hack. But I would like to put my vote in to make this requirement obsolete in comming versions of the legacy and the falcon compiler (If this isn't allready obsolete in falcon anyway).
@Alex you remember us discussing a refactoring of the compiler and to split up the commandline-parsing and the actual compiling and providing an interface that I could initialize the configuration as an object and pass that in to the compiler? Is there any timeframe for this? Even if I guess I would implement support for this in the new plugin, it would be of great help now. I think it would be great to do this together with such a refactoring cause then I'd have something I could detect this requirement on ( if(compiler instanceof ConfigurableCompiler) { ... } else { do the rename hack } ) Chris ________________________________________ Von: Christofer Dutz <christofer.d...@c-ware.de> Gesendet: Montag, 2. Juni 2014 17:20 An: dev@flex.apache.org Betreff: AW: AW: AW: AW: Is/Was there a requirement for the playerglobal.swc having to be named exactly this way? Well I'm not assuming that "isInternal" isn't used and can be ignored, I'm just assuming that I can make a Source internal by providing the appropreate scopes in flexmojos and hence make the "copy the file around and internally rename" hack obsolete. But I'll be able to investigate this in more detail when I'm back home. Chris ________________________________________ Von: Alexander Doroshko <alexander.doros...@jetbrains.com> Gesendet: Montag, 2. Juni 2014 17:10 An: dev@flex.apache.org Betreff: Re: AW: AW: AW: Is/Was there a requirement for the playerglobal.swc having to be named exactly this way? I don't know. I'm sure Velo also did some simple testing before releasing Flexmojos 3.7.0. But the problem came in real-life complex multi-modular project [1] and he had to release 7.0.1. flex2.compiler.Source#isInternal() method has 24 usages and I can't say for sure that all of them can be simply ignored without impact on compilation result. [1] https://www.mail-archive.com/flex-mojos%40googlegroups.com/msg06459.html On 02.06.2014 18:26, Christofer Dutz wrote: > But why does it produce running applications if I remove the special > handling? (I am using the legacy compiler) > > Chris > > ________________________________________ > Von: Alexander Doroshko <alexander.doros...@jetbrains.com> > Gesendet: Montag, 2. Juni 2014 16:16 > An: dev@flex.apache.org > Betreff: Re: AW: AW: Is/Was there a requirement for the playerglobal.swc > having to be named exactly this way? > > You are right that playerglobal.swc has "external" dependency scope in > Maven terms (and -external-library-path in terms of Flex compiler > options). Custom SWCs also may have "external" scope configred by user > who wants to omit inclusion of classes from this custom SWC. From maven > point of view both playerglobal.swc and custom.swc look the same. But > compiler still needs to handle them differently. > So far I don't see a way of making existing legacy compiler work > correctly with renamed playerglobal.swc. > > On 02.06.2014 15:40, Christofer Dutz wrote: >> I Just had a look at the code and it seems that the hard-coded name is only >> used in order to decide if the dependency is "internal". >> In Flexmojos I can set scopes "internal" and "external" (I think in >> Flexmojos Scopes the playerglobal should be "external"). >> So I'll investigate if setting the playerglobal dependency to Mavens scope >> "external" which should result in the same behaviour. >> >> If the playerglobal is not needed to be included in the output as the >> runtime provides this, "external" seems to be exactly that and >> I think providing that scope in maven is cleaner than renaming the package >> and then interenally handling it differently. >> >> What do you think? >> >> Chris >> >> >> ________________________________________ >> Von: Alexander Doroshko <alexander.doros...@jetbrains.com> >> Gesendet: Montag, 2. Juni 2014 10:01 >> An: dev@flex.apache.org >> Betreff: Re: AW: Is/Was there a requirement for the playerglobal.swc having >> to be named exactly this way? >> >> I'm afraid hardcoded "playerglobal.swc" is still not wiped out from the >> compiler sources. See >> flex2.compiler.mxml.lang.StandardDefs#SWC_PLAYERGLOBAL, its usage in >> flex2.compiler.CompilerSwcContext#createSource() and further usages of >> flex2.compiler.Source#isInternal(). With renamed playerglobal.swc >> compiler will just work incorrectly. >> >> On 01.06.2014 3:09, Christofer Dutz wrote: >>> But if I build using maven, it shouldn't matter ... so I was wandering why >>> Velo implemented this extremely complicated renaming ... >>> Seems to work nicely without :-) >>> >>> Chris >>> >>> -----Ursprüngliche Nachricht----- >>> Von: Justin Mclean [mailto:jus...@classsoftware.com] >>> Gesendet: Samstag, 31. Mai 2014 22:15 >>> An: dev@flex.apache.org >>> Betreff: Re: Is/Was there a requirement for the playerglobal.swc having to >>> be named exactly this way? >>> >>> HI, >>> >>>> So is this now an obsolete requirement? >>> As far as I aware Flash Builder expects it to be called playerglobal.swc. >>> >>> Thanks, >>> Justin