On 4/21/15, 12:44 AM, "Christofer Dutz" <christofer.d...@c-ware.de> wrote:
>If we were to publish all themes equally as swcs though, I wouldn't need >to compile them in the mavenization process and we could get rid of the >additional playerglobal 10.2 download, which has to be confirmed. > >I would love to allow setting an environment variable ... something like: >-DI_ACCEPT_ADOBES_LICENSE_AGREEMENT_FOR_FLASH=true >-DI_ACCEPT_ADOBES_LICENSE_AGREEMENT_FOR_AIR=true >or >-DI_ACCEPT_ADOBES_LICENSE_AGREEMENT_FOR_THE_FONTKIT=true > >but Alex strictly objected that when I started working on the Mavneizer. >Even if the SDK build does have such an environment variable to allow CI >builds. If anything here has changed, I would love to allow that. Hey, it wasn’t my decision ;-). I’m just the messenger. The key principle is that Adobe’s legal team thinks that Adobe’s license agreement more enforceable if folks have to acknowledge that they’ve actually read it. Lots of web sites do this today: “by clicking here you agree to the terms and conditions blah blah blah.” But yeah, that gets in the way of CI. I’m happy to present alternative ideas for approval from Adobe Legal. I think we already discussed and ruled out the environment variable because it is too easily implemented without folks having to ack the license. IIRC, it isn’t that each user needs to ack the license. One person per organization is sufficient, so it is ok for the one build engineer at company X to ack the license and for other build engineers to then download the Adobe bits without interaction. The idea at the time was that the build engineer would have to watch the first run and hit yes, but after that, somehow the mavenizer remembered that the license was accepted and didn’t ask again, but in a way that wasn’t easily cloned to different business entities. That’s why environment variables in a script are insufficient, but a cookie is not. -Alex > >Chris > >________________________________________ >Von: Christofer Dutz <christofer.d...@c-ware.de> >Gesendet: Dienstag, 21. April 2015 07:41 >An: dev@flex.apache.org >Betreff: AW: Re : Re^10: Flex SDK Converter Maven Extension available > >Well actually i should make flexmojos output sensible errors. That >message you reported isn't any help at all and I have to handle that. > >No matter what we do. Your repo manager will always have to do something >in order to have flash, air and fontkit installed. > >So currently I'll not put that much effort into that. > >Chris > >Gesendet mit meinem HTC > >----- Reply message ----- >Von: "Frédéric THOMAS" <webdoubl...@hotmail.com> >An: "dev@flex.apache.org" <dev@flex.apache.org> >Betreff: Re : Re^10: Flex SDK Converter Maven Extension available >Datum: Di., Apr. 21, 2015 01:21 > >I think it is great as well but would like to be able to do a complete >build on CI having the SDK in my repo manager, so at the moment, I still >need to rely on the deployer until a public mavenized version is out. > >Otherwize I still have no clue why I add an error:null, hope Ill have >more time tomorrow to try to figure it out and try again with your last >version. > >But anyway and once again, great job, it is awesone the FM integration >you did of the mavenizer. > >Cheers, >-Fred > >--- Message initial --- > >De : "Christofer Dutz" <christofer.d...@c-ware.de> >Envoyé : 20 avril 2015 23:24 >A : dev@flex.apache.org >Objet : Re^10: Flex SDK Converter Maven Extension available > >Ok ... so with my latest change, I was able to build Flexmojos without >any Flex related artifacts in my local repo. It correctly downloaded >flash and air as well as all of our released Flex SDKs and the entire >test-suite passed without a single failure ... new SNAPSHOT uploaded by >the way ;-) > >I really like this solution. First of all it's so simple (just copy one >jar to your maven lib/ext and all of your Flex projects have their stuff >installed automatically ... as soon as we release a new FDK or you want >to target a new Flash or Air version (Only restriction is that we have to >list it in our installer config file), all you have to do is change the >dependency version to the new one and run a "mvn install" and it will >automatically get the missing parts. And all of this without giving up on >any of the maven features. > >With this in place I don't think we even need to release the FDK as maven >artifacts. > >So I think we should experiment a little with this, fix any eventually >found bugs/problems and release it some time soon. > >One thing I did notice, is that I have two implementations of download in >the code ... the fast and the safe. I needed the safe one to download the >fontkit libs. The fast is about 3 times faster than the safe one ... >unfortunately I have noticed the fast being insanely slow in about 10% of >the time. Eventually doing all with the safe version would be an option. > >Chris > > >________________________________________ >Von: Christofer Dutz <christofer.d...@c-ware.de> >Gesendet: Montag, 20. April 2015 21:24 >An: dev@flex.apache.org >Betreff: AW: AW: AW: Flex SDK Converter Maven Extension available > >Ok I just fixed a little bug in the converter ... > >As I stripped the build number from the flex version, no rsl was copied >to the maven repo. I just fixed that problem, now the rsls are correctly >deployed to the output. > >Chris > >________________________________________ >Von: Christofer Dutz <christofer.d...@c-ware.de> >Gesendet: Montag, 20. April 2015 09:17 >An: dev@flex.apache.org >Betreff: AW: AW: AW: Flex SDK Converter Maven Extension available > >The reason why the conversion of a Flex SDK needs flash resources, is the >fact that in the Flex SDK we don't provide all themes as swcs. I made the >flex converter automatically compile any non swc themes to swc format in >order to be able to use all themes equally. In order to compile, you need >a playerglobal and that's not present in the binary distribution. >Therefore the flex converter downloads the minimum version for this task >only. > >Regarding the FM error. Did you compile with "-X" option to show >stacktraces? Would be helpful as the log doesn't really show much usefull >information. One thing I could immagine: The failling project ... does >this use font encoding? This is no longer part of the "compiler" >artifact. If your module needs font encoding and font embeding, you need >to add an additional plugin dependency to com.adobe:fontkit:1.0:pom > >Chris > > >________________________________________ >Von: Frédéric THOMAS <webdoubl...@hotmail.com> >Gesendet: Sonntag, 19. April 2015 20:40 >An: dev@flex.apache.org >Betreff: RE: AW: AW: Flex SDK Converter Maven Extension available > >Hey Chris, > >Yep, was that, thanks ! > >The project was compiling nicely with FM 7.0.1, SDK 4.14, I changed it to >SDK 4.13.0 and FM 7.1.0-SNAPSHOT to verify. > >1- I noticed you have a dependency to flash player 10.2, is this for the >minimum version in case it is not specify ? >2- I removed the FM dependency of flexmojos-threadlocaltoolkit-wrapper to >fonkit which is not in the compiler pom anymore and while it compiles >some projects it fails on others with something not really helpful >https://paste.apache.org/nIkS > >Does it mean something for you ? > >Frédéric THOMAS > >> From: christofer.d...@c-ware.de >> To: dev@flex.apache.org >> Subject: AW: AW: Flex SDK Converter Maven Extension available >> Date: Sun, 19 Apr 2015 17:21:47 +0000 >> >> Yup ... I know exactly why you are getting this cause I had to figgure >>that out too :-) >> Maven 3.3 has higher requirements for the Java Version ... you need at >>least a Java 1.7 VM >> >> Chris >> >> >> >> >> -----Ursprüngliche Nachricht----- >> Von: Frédéric THOMAS [mailto:webdoubl...@hotmail.com] >> Gesendet: Sonntag, 19. April 2015 18:46 >> An: dev@flex.apache.org >> Betreff: RE: AW: Flex SDK Converter Maven Extension available >> >> Hi Chris, >> >> Just came back home and was trying FM 7.1.0-SNAPSHOT, I droped >>flex-maven-extension.jar into the lib/ext folder along with the >>extensions.xml of my fresh maven 3.3.1 (I still was in 3.0.5) and got >>this even though after I removed the extensions.xml: >> >> Exception in thread "main" java.lang.UnsupportedClassVersionError: >>org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0 >> >> Any clue ? >> >> Frédéric THOMAS >> >> > From: christofer.d...@c-ware.de >> > To: dev@flex.apache.org >> > Subject: AW: Flex SDK Converter Maven Extension available >> > Date: Sun, 19 Apr 2015 11:50:07 +0000 >> > >> > Ok ... so maven and it's classloading can be a PITA ;-) >> > >> > But the latest version now works with all Maven versions from 3.1.1 >>up to 3.3.1. >> > So if you copy the fat jar from >> > >>flex-utils/mavenizer/maven-extension/target/flex-maven-extension-1.0.0.ja >>r to MAVEN_HOME/lib/ext and try to build a Flex project with Flexmojos, >>the magic will kick in instantly. >> > >> > Unfortunately my last changes seem to have broken the ability to >>include the extension using the ".mvn/extensions.xml" mechanism. I'll >>fix that as soon as possible. >> > >> > Chris >> > >> > >> > -----Ursprüngliche Nachricht----- >> > Von: Christofer Dutz [mailto:christofer.d...@c-ware.de] >> > Gesendet: Samstag, 18. April 2015 18:18 >> > An: dev@flex.apache.org >> > Betreff: AW: Flex SDK Converter Maven Extension available >> > >> > Ok ... today I started testing the extension with older Maven versions >> > and with the extension installed in MAVEN_HOME/lib/ext instead of >> > having it referenced from ".mvn/extension.xml" and it seems I have to >> > put a little more work into this option. But feel free to test it with >> > 3.3.1 :-) >> > >> > Chris >> > >> > ________________________________________ >> > Von: Christofer Dutz <christofer.d...@c-ware.de> >> > Gesendet: Samstag, 18. April 2015 02:32 >> > An: dev@flex.apache.org >> > Betreff: AW: Flex SDK Converter Maven Extension available >> > >> > Snapshot should be available. At least I deployed it a few hours ago >> > :-) >> > >> > Gesendet mit meinem HTC >> > >> > ----- Reply message ----- >> > Von: "Frédéric THOMAS" <webdoubl...@hotmail.com> >> > An: "dev@flex.apache.org" <dev@flex.apache.org> >> > Betreff: Flex SDK Converter Maven Extension available >> > Datum: Fr., Apr. 17, 2015 20:56 >> > >> > Hi Chris, >> > >> > Seems cool, do you have a snapshot ? >> > I will have more time on Sunday to continue the converter test and >>could be a good opportunity to try this version too. >> > >> > Thanks, >> > Frédéric THOMAS >> > >> > > From: christofer.d...@c-ware.de >> > > To: dev@flex.apache.org >> > > Subject: Flex SDK Converter Maven Extension available >> > > Date: Fri, 17 Apr 2015 18:37:54 +0000 >> > > >> > > Hi Guys, >> > > >> > > >> > > I invested several days in extending Flexmojos to use the >>flex-sdk-converter (AKA Mavenizer). I ended up with a version of >>Flexmojos that allowed to build flex applications without any >>dependencies at all (compiler, player/airglobal, framework were added >>automatically). By setting some properties flexmojos would auto-download >>the resources and convert them. I even managed to have the compiler >>resources automatically added to the plugin classpath. >> > > >> > > >> > > The huge downside of this approach is that other maven plugins >>don't deal really well with this. For example the dependency:tree plugin >>doesn't show the libs and IntelliJ doesn't either. I was also really >>worried that I was working around mavens dependency resolutions >>strategies which could mess up some things big time. >> > > >> > > >> > > I therefore tried something completely different. I created a core >>maven extension. You can think of this as a plugin for maven itself. >>With this I added a Maven "EventSpy" which monitors Maven for resolution >>requests to Flex related artifacts. If one of these fail to resolve, the >>SDK Converter kicks in to download, convert and install the artifacts. >>Depending on the Maven version you are using this has to be installed >>slightly different. >> > > >> > > >> > > ------------------------------------------------------------- >> > > >> > > If you are using Maven 3.3.1 or above (Yeah ... not too much above >>that yet ;-): >> > > >> > > ------------------------------------------------------------- >> > > >> > > - create a ".mvn" directory in your projects root. >> > > >> > > - create an "extensions.xml" inside that directory with the >> > > following content >> > > >> > > <?xml version="1.0" encoding="UTF-8"?> <extensions> >> > > <extension> >> > > <groupId>org.apache.flex.utilities.converter</groupId> >> > > <artifactId>maven-extension</artifactId> >> > > <version>1.0.0-SNAPSHOT</version> >> > > </extension> >> > > </extensions> >> > > >> > > ------------------------------------------------------------- >> > > >> > > If you are using Maven below 3.3.1 >> > > >> > > ------------------------------------------------------------- >> > > >> > > Copy the flex-maven-extension jar to your MAVEN_HOME/lib/ext >> > > directory (Have to do a little more testing with this though ... the >> > > 3.3.1 approach should work) >> > > >> > > >> > > So you should be able to build the above project without having >>ANYTHING related to flex installed by executing: >> > > >> > > mvn install >> > > >> > > I did change 2 minor things in the current sdk-converter though ... >>FDKs now have three digit versions an no longer contain the build number >>... so instead of using 4.14.1.20150325 you just use 4.14.1 instead. >>Additionally now for the flash sdk a "com.adobe.flash:framework:pom" is >>created in order to have all sdk parts in sync. >> > > >> > > Really glad I didn't release the converter the first time ;-) >> > > >> > > Have Fun, looking forward for feedback >> > > >> > > Chris >> > > >> > > >> > > >> > > >> > > >> > > >> > >> >