Using Flex 4.5.0.17077 (Hero Early Beta) With Maven

The early beta of Flex SDK 4.5 (Hero) is now available on the flash nexus maven repository.

You can use this maven repository by adding the following xml into either you .m2/settings.xml file or putting in directly in your pom of choice.

<repository>
  <id>flash-nexus-repository</id>
  <url>http://www.flashnexus.org/nexus/content/groups/public</url>
</repository>

Then you will be able to use the latest Flex SDK 4.5 Beta by adding the following dependency to your project pom.

<dependencies>
 <dependency>
  <groupId>com.adobe.flex.framework</groupId>
   <artifactId>flex-framework</artifactId>
   <version>4.5.0.17077</version>
   <type>pom</type>
  </dependency>
 </dependencies>

You can then use Flexmojos as normal for your builds.

Please let me know how you get on, and please suggest other libraries to be added to the repository.

This has only been possible thanks to excellent work by Dragos Dascalita who created some shell scripts to install the Flex SDK automatically into a maven repository in a way that is compatible with Flex Mojos. His original blog post is here

http://www.flexthinker.com/2010/03/installing-flex-sdk-into-maven-repository/

I took his original files and tweaked them for Flex 4.5

  • They have a bug fix in install-swc-rb-artifact in install-flex-framework.sh, fixing an issue where the passed in classifier was not used.
  • They clean up any files that might be left around before starting a new build (I needed to do this because I had to keep rerunning them)
  • They no longer install playerglobal 10.0 as this fails for Flex SDK 4.5 – the line which installs that is commented out in install-flex-framework.sh (playerglobal 10.1 was installed as the default with these scripts any way)

    I have created a Git repository for these files and you can find them on github

    http://github.com/piercer/flex_sdk_maven_install

Posted in Uncategorized | 1 Comment

Using The latest Flexunit with Maven

Maven is an excellent build management tool and it is slowly gaining acceptance in the flash and flex community. If you want to run unit tests from Maven using the very latest build of Flexunit 4 (4.1 beta 3 at the time of writing) then read on.

Continue reading

Posted in Development, Flash, Flex | Tagged , , | Leave a comment

What Problem Does Catalyst Solve?

This morning I sat down to use catalyst for the first time. I am preparing for a talk at Flash on The Beach in Brighton this year and I was hoping to be able to show how a view build in Catalyst could be injected into an app using Robotlegs.

Continue reading

Posted in Uncategorized | 2 Comments

Flash On The Beach

A couple of years ago I was working at a digital agency in London called Skive. It was my first (and currently only) agency work and was an amazing experience for me.

Where I had worked before was very insular and they had no interest in furthering the outloook of its flash developers. This meant that we didn’t really see ourselves in relation to the wider flash community. However at Skive they believed it was important for their developers to get out there and meet other people. So after being there just a short time they mentioned attending a conference called Flash On The Beach. They bought us flexi-passes  and we were allotted 2 days each to attend.

I chose two very technical days and went down to Brighton to see what it was all about. My main memory is of Seb Lee-Delisle using a very funny scene from Father Ted in order to explain 3D rendering with Papervision – you had to be there. The conference went by in a whirI and by the end I remember feeling energised and thrilled by the spirit of it all. It also inspired me to further my own knowledge and even become a speaker.

Last year I was all set to attend again – after going once I think you will always return – but I also offered myself up to John Davey (the organiser) as a speaker. Not only was I too late but also to be honest, pretty inexperienced at doing a talk at that level. He politely declined my offer, but did ask if I wanted to do an elevator pitch for a new session he had devised for that years conference. I was initially skeptical about what could be achieved in 3 minutes, until it suddenly dawned on me that it was a brilliant idea. So I jumped at the chance.

Preparing for an elevator pitch was a pretty scary thing. There can be no deviation or wandering, everything has to be timed pretty much perfectly and the amount of information rationed to just the right amount. I did my best and came up with my ASAXB elevator pitch, which I hope some of you reading this saw.  Presenting that in front of a packed hall was a buzz like no other, I can tell you. My congratulations go out to all the other elevator pitch speakers who also managed this feat of information condensing. Combined with getting the chance to spend 3 days at the conference this made the whole experience another thrilling, exciting and stimulating one.

After the conference, votes were collected from the attendees to find out which speakers of the elevator pitch people wanted to see do a full talk this year. Amazing I was one of the lucky ones and so  will be talking for a full hour at the next Flash On The Beach. I can’t wait, because I will also get to spend three days at one of the most stimulating conferences I know of.

Flash on The Beach really is something a little special. You get a load of amazing speakers (and  also me, who really does not feel worthy when he looks at the names of the flash luminaries he is listed alongside) presenting a HUGE amount of information in a lovely seaside environment. You meet a lot of interesting attendees and come away inspired and refreshed (as long as you don’t drink too much). So if you are a flash platform worker of any sort and have never been then you owe it to yourself to get your arse along to a brilliant 3 days of fun and learning.

If you see me, come and say hi.

Posted in Flash | 2 Comments

Flash CS5 and Version Control

Up until Flash CS5 the heart of any designer driven flash application has been the FLA file. This is a binary file that is unreadable by humans. It has always been possible to store FLA files in a version control system, such as Subversion, and track changes. In fact Subversion is probably the best choice for FLA’s because of the excellent way that it handles binary file changes. However an FLA file can only be edited by one person at a time and the changes can only be committed sequentially. This is because the file is binary, unreadable by humans and multiple simultaneous changes can not be merged together to form a coherent FLA that represents all the work done.

Enter Flash Professional CS5 and its promise of better integration with version control systems.

Continue reading

Posted in Flash | Tagged , , | 6 Comments

ASAXB Metadata Definitions for Sourcemate

I am working on a small personal project at the moment that uses open source libraries: RobotLegs, AS3Signals and ASAXB.

Two of these libraries use metadata in the code in order for them to function. As far as I am aware Flex Builder, Flash Builder and FDT do not check metadata syntax out of the box. However there is a Flash Builder extension called SourceMate that does. It will tell you if the metadata is in the right place, the required parameters and whether or not all the parameters you provide are correct.

It is possible to import metadata syntax definitions into SourceMate and several open source projects have already done this. In order to continue this trend I am providing the definitions for ASAXB metadata syntax.

Continue reading

Posted in ASAXB, Development | Tagged , | 2 Comments

It Is Impossible To Unload A Flex Application!

As stated in my previous post , we are trying to make a modular application that can both load and unload flash sub-applications at runtime. We ran into problems with Flex never releasing any memory after unloading. I started investigating and unfortunately it seems that Flex is written with no thought for releasing memory on unload at all. In fact I would say that it is currently impossible to unload a Flex application from memory once it has been loaded.

Continue reading

Posted in Uncategorized | 2 Comments

Flex Leaks Memory By Design?

Currently at work we are involved in investigating modular flash and flex applications. We want to be able to load and unload swf files without really knowing what kind of application that they contain – this seems like a small thing to ask, doesn’t it? In order for this to work the swf you load up has to be well behaved.

With actionscript only applications we can make any sub-application load and unload without any issues what so ever – as long as they internally do not leak memory and do not try to break out of their own confines. However when we try to unload a flex sub-application we find it impossible to release the memory.

This seems to be an issue that starts at the highest level, where the flex application refuses to confine itself to its own domain.

This can be demonstrated by a very simple application.

Continue reading

Posted in Development, Flex | 3 Comments

Using Git With Flash Builder 4 Part 2

Introducing GitHub

In the last part of this series I warned that your local Git repository was not backed up anywhere. This is definitely a very bad situation.

In order to fix this you just need to create a copy/clone of your repository somewhere safe. You can do this by just copying your filesystem to at least one other drive. However this will all be local to you and private.

If you want to share your code with other developers you can always set up your own Git server and make it publicly accessible, but there is another option – GitHub . This is a sort of social networking version control central Git repository that lives in the cloud. There are many levels of accounts, with the most basic one being free and all your repositories being public. If you want to share your code with others this is an ideal place to put your code and have it backed up.

Continue reading

Posted in Development | Tagged , , | 1 Comment

Using GIT with Flash Builder 4 Part 1

Subversion has been my version control system (VCS) of choice for a long time now. However recently I have found myself leaning towards GIT more and more. In my opinion GIT is actually simpler than Subversion and not having .svn files littered all over the place is definitely life changing (maybe thats an exaggeration but it definitely makes thing a lot simpler). GIT is not as good at handling binary files (fla’s, swf’s and swc’s for example) as Subversion, but source swc’s shouldn’t change that often, and should you be storing the built output of your code in a VCS anyway?

This morning I found a new release of Flash Builder (build 271588) on the Adobe Prerelease site, and finally the standalone version supports 3rd party add-ons via the eclipse P2 update mechanism. Flush with the excitement of being able to use the standalone version for the first time in ages I decided to install it.

At this point I would normally install Subversive as my built in IDE VCS. When I started the LICS project I used GIT, but it was a bit of an ad hoc experiment and I had no formalised process – I still thought of subversion as my main VCS. But this morning was different, I felt it was time to officially jump ship and use GIT for all new projects. So instead of installing the Subversive eclipse plugin I went for EGIT instead. This is an eclipse plugin that allows you to work with a GIT repository and even push to a remote repository such as GITHub.

Here is what I did to start using GIT from inside Flash Builder.

Install Flash Builder 4.

I won’t describe how to do that here – its available here, and if you are using the Beta 2 you should use be sure to use the Eclipse plugin version because the Beta 2 standalone does not support 3rd party add-ons.

Start Flash Builder 4.

Click Help>Install New Software

Screen shot 2010-02-25 at 10.12.54.png

Continue reading

Posted in Development | Tagged , | 2 Comments