You did make things a little over-complicated with your regexps :-) 1. Replace "@constructor" against "@static" in Tween.js 2. Replace "@static" against "@constructor in Tween.js
So how about just doing nothing here? ;-) 3. Replace "@static" against "@constructor in Ease.js As Ease.js has no "@static", let's just omit that too (Eventually handled by the bunch I applied to all) ... "createjs/utils/Ticker.js" is contained in both EaselJS as well as Tween therefore I only used the EaselJS, so I think it's ok to omit that replacement too ... at least now it's building correctly :-) I did notice a problem in the compile-as-config. You only package the javascript sources of easeljs, I updated that to include the ones in tweenjs too. One thing that might confuse you in my "src/main/config/compile-{as/js}-config.xml" files is that the paths here have to be relative to the target directory, as the plugin takes them and injects the external lib paths and lib paths with the ones provided by maven. I changed them back to the maven paths, so don't be confused, just copy them to target and run them from there. Chris ________________________________________ Von: Alex Harui <aha...@adobe.com> Gesendet: Montag, 25. April 2016 23:05 An: dev@flex.apache.org Betreff: Re: AW: [FALCONJX] Merging Maven refactor in to develop branch On 4/25/16, 10:38 AM, "Christofer Dutz" <christofer.d...@c-ware.de> wrote: >No problem at all ... for me it will make things a lot easier as I no >longer have to merge things manually ... looking forward to this :-) I was going to push the merge, but I think the Maven build will need fixing, and I'm not sure what is the best way to fix it. The externs/createjs Ant build changed to download a second package, which is TweenJS-0.6.2. Then some new processing rules were added, namely: <replace file="${basedir}/externs/${file}" token="@param data" value="@param {Object} data" /> <replace file="${basedir}/externs/${file}" token="@param ratio" value="@param {Number} ratio" /> <replace file="${basedir}/externs/${file}" token="@param target" value="@param {Object} target" /> <replace file="${basedir}/externs/${file}" token="{any}" value="{Object}" /> These files get added to the list of files sent through the entire set of filters tweenjs/CSSPlugin.js tweenjs/Ease.js tweenjs/MotionGuidePlugin.js tweenjs/SamplePlugin.js tweenjs/Timeline.js tweenjs/Tween.js Then these files get special treatment: <replaceregexp file="${basedir}/target/EaselJS-${createjs.version}/src/tweenjs/Tween.js" match="@constructor" replace="@static" flags="gs" /> <replaceregexp file="${basedir}/target/EaselJS-${createjs.version}/src/tweenjs/Tween.js" match="@static" replace="@constructor" /> <replaceregexp file="${basedir}/target/EaselJS-${createjs.version}/src/tweenjs/Ease.js" match="@static" replace="@constructor" /> <replaceregexp file="${basedir}/target/EaselJS-${createjs.version}/src/createjs/utils/Tick er.js" match="@static" replace="@constructor" /> <replace file="${basedir}/target/EaselJS-${createjs.version}/src/createjs/utils/Tick er.js" token="createjs.Ticker.addEventListener = function()" value="createjs.Ticker.addEventListener = function(type, handler)" /> I would have just added this stuff to the pom.xml, but the part I'm not sure about is how to handle unpacking two different packages. In the Ant build, I just move the second package's files into the first package's folder so the replace filters can just run in one folder. I'm not sure if you want to keep them as separate folders or unzipped sources or not, and how to adjust the maven build accordingly. Thoughts? -Alex