Flex-mojos 2.0-alpha4

A new version is out.

Before start with the news, I wanna talk about this alpha versioning…

2.0-alpha4 is much more stable then 1.0. So why I’m calling this alpha?? I have no idea :D

2.0 series bring a lot of news, that is why I call it 2.0, but alpha? I’m not happy with the current versioning convention. May be someone can give me a better idea.

Major updates on alpha4:

    Flex-mojos was build using install mojo dependencies. Yes, we are buying what we are selling.
    That’s “force” me to released install mojo too.
    New resource bundle system. Will blog about details latter, but keep in mind now dependency type is rb.swc and classifier is no longer used (so should be removed). See issue 49
    Fixed commas support on asdoc. See issue 80.
    Default SDK version was updated to 3.1.0.2710, the new milestone.

This version doesn’t have a big number of bug fixes, but I did some important changes related to install-mojo. May be I did break something, but 82% of tests coverage do get the problem. That’s remind me one more thing. I wanna keep flex-mojos compatible with 3.0.0.477. For now, I run tests twice (3.0.0.477 and 3.1.0.2710). May be someone can help me on this.

I deployed FlexSDK 3.1.0.2710 (MPL version) at Flex-mojos maven repository. If you need to use fonts, SVG, RSLs or charts, please use install-mojo to get the full version of flex-sdk at your repositories. Before someone asks if I will put full FDK (JDK = java, FDK=flex) version at repository the answer is: “Yes! I will not do that. And I’m thinking on kill the current repository. :P”. Sorry for that.

In the other hand, this week I talk (e-mail) the first time with Matt Chotin. Well, I introduce he to install-mojo. May be an Adobe Maven Repository can be born. May be not. Any way, there is no problem on dreaming about it.

Well, that is it what I have done in one week after a few weeks away from flex-mojos. I will probably be away a few more week, but I always keep one eye at google group.

One last thing. A few days ago I got a small donation (20 dollars) so I create a google ADS for flex-mojos. I don’t now why, but googling for “maven flex” I got israfil, serverbox, some blogs, articles and almost on second page flex-mojos. I don’t why (if someone can help me to get flex-mojos better/right indexed let me now), so I decide to convert this donations into ADS.

Well, that is it. Have a nice weekend every body.

Install-mojo

Put Adobe Flex SDK into a maven repo was a pain in the *ss…

I did that several times, and well, I’M FULL OF DOING IT.

But that is on the pass. This week I create a mojo to do that. BTW, I create 2 mojos. One to install Flex SDK at local repo and another to deploy into a remote repo.

Usages:

mvn info.flex-mojos:install-mojo:install-sdk -Dflex.sdk.folder=${flex sdk folder} -Dversion=${flex sdk version}

mvn info.flex-mojos:install-mojo:deploy-sdk -Dflex.sdk.folder=${flex sdk folder} -Dversion=${flex sdk version} -Durl=${remote repo}

Very simple to use.

It will produce several artifacts. All under <groupId>com.adobe.flex</groupId>. Two artifacts are very important for flex-mojos:

<dependency>
  <groupId>com.adobe.flex</groupId>
  <artifactId>compiler</artifactId>
  <version>${flex sdk version}</version>
  <type>pom</type>
</dependency>
<dependency>
  <groupId>com.adobe.flex.framework</groupId>
  <artifactId>flex-framework</artifactId>
  <version>${flex sdk version}</version>
  <type>pom</type>
</dependency>

The first one is the compiler. Java stuff. JAR’s
The second is the flex framework. Flex stuff. SWC’s

2 notes. The flex-framework dependency is to be used as your project dependency. This two dependencies should not be used together, so, if both appear on the same dependencies block of your project there is a great chance of something wrong.

Now is easier to update flex version. Just need to add the two dependencies in the right places. You can see how/where here.

Flex-mojos sources are updated to use this new dependencies, but I didn’t release it. And I didn’t update maven repository too.

Stay tuned.

VELO

Maven + Flex developers: Is flex 2.0 support important to you???

A few time ago I figure out how to add Flex 2.0 support for flex-mojos.

Will give me some refactory (may be a lot =P), but this refactory will be required to make flex-mojos compatible with flex 3 and 4 (to explore new features).

So, before I start code I wanna to know:
Is flex 2.0 support important to you???

If you need/wanna/like flex 2.0 support, go to google code site, and add a start at this issue: http://code.google.com/p/flex-mojos/issues/detail?id=83.

Let’s see how important flex 2.0 support is.

VELO

Hello World tutorial for flex-mojos 1.0

I’ve created a simple Hello World tutorial for using flex-mojos 1.0.

http://code.google.com/p/flex-mojos/wiki/HelloWorldTutorial

3rd party archetypes…

Some time ago I blog about François archetype here.

Now he did again.

But now, is not only one archetype. It’s A new set of flex maven archetype.

    a Flex BlazeDS XDoclet Spring Hibernate Archetype
    a Flex cairngorm flexunit archetype
    a Flex library (swc) archetype

Check more at FNA project site.

VELO

Flex-mojos 2.0-alpha3

After a few time working on issues and on get a better test coverage, here is a new flex-mojos release.

On flex-mojos alpha2 the test coverage was near to 44% (blocks). Now, on alpha3 code coverage is 81% (blocks). While I was writing those extra integration tests I was able to find and fix some unknown issues.

BTW, I take some time to fix issues too. 8 issues closed:
* Issue 12 - now you can run a quick build by typing mvn install -Dquick.compile=true. It will compare the last generated artifact with current sources. If there is any new code, will recompile. If not will skip compilation.
* Issue 43 - flex-mojos will ignore test errors using -Dmaven.test.failure.ignore=true (same expression used by surefire)
* Issue 53 - flex-mojos will skip test running with -DskipTests=true. It will compile the tests. But will not run they.
* Issues 67 and 68 some fixes on AsDoc support.
* Issue 69 flex-mojos tests runner will add a sandbox exception to run tests. To do that just need to add the configuration updateSecuritySandbox. Default value is false.
* Issue 70 just a cosmetic change on flex-super-pom.
* Issue 71 fixed an old issue on compiled localization support. After Adobe feedback was piece of cake =P

This version should be flex-mojos most stable release.

VELO

Flex-mojos compiling Flex 4 Gumbo?

Hi folks,

Some time ago, I wrote a post showing how to update compiler version.

But is possible to compile Flex 4 with flex-mojos?

First, I take this sample source.

Then, I use this knowledge to upgrade flex-oem-compiler to 4.0.0.2480.

Try to compile and got this error:

[ERROR] D:\flex\workspace\sonatype-flex-mojos\flex-mojo-IT\src\test\resources\flex4-gumbo\src\main\flex\Flex4App.mxml:[-1,-1] Unable to locate specified base class ‘flex.core.Application’ for component class ‘Flex4App’.

At this point I figure out flex gumbe came with some new manifest files:

    gumbo-manifest.xml
    fxg-manifest.xml
    mxml-2009-manifest.xml
    mxml-manifest.xml

To handle this, I add those xml to my project and this configuration:

  <build>
    <plugins>
...
      <plugin>
        <groupId>info.flex-mojos</groupId>
        <artifactId>flex-compiler-mojo</artifactId>
        <extensions>true</extensions>
        <configuration>
...
          <namespaces>
            <namespace>
              <uri>library:adobe/flex/gumbo</uri>
              <manifest>gumbo-manifest.xml</manifest>
            </namespace>
            <namespace>
              <uri>library:adobe/flex/halo</uri>
              <manifest>mxml-manifest.xml</manifest>
            </namespace>
            <namespace>
              <uri>http://ns.adobe.com/mxml/2009</uri>
              <manifest>mxml-2009-manifest.xml</manifest>
            </namespace>
            <namespace>
              <uri>http://www.adobe.com/2006/mxml</uri>
              <manifest>mxml-manifest.xml</manifest>
            </namespace>
            <namespace>
              <uri>http://ns.adobe.com/fxg/2008</uri>
              <manifest>fxg-manifest.xml</manifest>
            </namespace>
          </namespaces>
        </configuration>
      </plugin>
    </plugins>
  </build>

In the end, run mvn clean install, all compile and fine.

You can checkout this entire post source from:
http://svn.sonatype.org/flexmojos/trunk/rvin-mojo/flex-mojo-IT/src/test/resources/flex4-gumbo/

Hopefully all required dependencies are on flex-mojos maven(svn) repository. Let me know if I miss something.

VELO

Flex-mojos 2.0 roadmap

Hi folks,

Some time ago I created a flex-mojos 2.0 roadmap:
http://code.google.com/p/flex-mojos/wiki/roadmap2

Now I wanna get some feedback. What do you think about this roadmap? Are you missing something? If you can change this list, what you like to change?

Please, post any comments on wiki.

VELO

FlexUnit Test Reports

Some time ago, I write a post with instructions to generate test reports here.

At that time, flex-mojos was generating the reports at wrong directory. To workaround it, was necessary to declare reportsDirectory.

Now this issue is fixed. To generate test reports you only need this:

<reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-report-plugin</artifactId>
      </plugin>
    </plugins>
  </reporting>

Note reportsDirectory is not present anymore.

Flex-mojos 2.0-alpha2

Hi guys,

A new flex-mojos release is out.

Main changes:
* Now is possible to pack tests into SWC. Read more here.
* Improved flex-compiler-mojo documentation, specially adding usage hints for complex parameters.
* Some fixes on docs site (http://docs.flex-mojos.info/)
* Update generator mojo to use GAS3 1.1.0-RC2 (thanks to Juraj Burian)
* Fixed some issues: 58, 59, 60, 61, 62, 63, 64 and 65.

That’s All Folks

VELO