I have a working maven pom which builds my AIR app and I am trying to 
migrate it to use the new AIR 3.5 SDK.  According to the official release 
notes here : 
http://helpx.adobe.com/en/flash-player/release-note/fp_115_air_35_release_notes.html
 I 
need to firstly need to point to the new 3.5 schema in my air-app.xml file 
as follows: <application xmlns="http://ns.adobe.com/air/application/3.5";>
 
I also change my swfVersion and targetPlayer attributes as follows:
 
<swfVersion>18</swfVersion>
<targetPlayer>11.5</targetPlayer>
 
I also changed the system Path environment variable on my machine to point 
the to the bin directory of the new AIR 3.5 sdk, so that when I type adl on 
the command line it reports back:
 
Adobe (R) AIR (R) Developer Tool (ADT)
Version 3.5.0.600
 
So when flexmojos launches ADL, it is launching the correct version.
 
However I don't change my flex version which is set to 
<flex.version>4.5.1.21328</flex.version>, and my flexmojos version which is 
4.2-beta.
 
When I then try and build my project I get the following error:
 
[ERROR] Failed to execute goal 
org.sonatype.flexmojos:flexmojos-maven-plugin:4.2-beta:sign-air 
(default-sign-air) on pro
ject indigo-air: Error invoking AIR api: NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute 
goal org.sonatype.flexmojos:flexmojos-maven-pl
ugin:4.2-beta:sign-air (default-sign-air) on project indigo-air: Error 
invoking AIR api
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at 
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at 
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error invoking 
AIR api
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.doPackage(SignAirMojo.java:337)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.execute_aroundBody0(SignAirMojo.java:348)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.execute_aroundBody1$advice(SignAirMojo.java:24)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.execute_aroundBody2(SignAirMojo.java:348)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.execute_aroundBody3$advice(SignAirMojo.java:17)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.execute(SignAirMojo.java:1)
        at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        ... 19 more
Caused by: java.lang.NullPointerException
        at 
com.adobe.air.ADTOutputStream.addApplicationDescriptor(ADTOutputStream.java:330)
        at 
com.adobe.air.AIROutputStream.addApplicationDescriptor(AIROutputStream.java:63)
        at 
com.adobe.air.ApplicationPackager.addSpecialFiles(ApplicationPackager.java:242)
        at com.adobe.air.AIRPackager.addSpecialFiles(AIRPackager.java:172)
        at 
com.adobe.air.ApplicationPackager.createPackage(ApplicationPackager.java:63)
        at 
org.sonatype.flexmojos.plugin.air.packager.FlexmojosAIRPackager.createPackage(FlexmojosAIRPackager.java:42)
        at 
org.sonatype.flexmojos.plugin.air.SignAirMojo.doPackage(SignAirMojo.java:310)
        ... 26 more
 
 
If I try adding explicitly adding the AIR dependencies as follows:
 
         <dependency>
            <groupId>${flex.groupId}.framework</groupId>
            <artifactId>airframework</artifactId>
            <version>${flex.version}</version>
            <type>pom</type>
        </dependency>
        <dependency>
            <groupId>${flex.groupId}.compiler</groupId>
            <artifactId>adt</artifactId>
            <version>${flex.version}</version>
            <scope>compile</scope>
        </dependency>
 
this has no effect and I still get the NPE error. 
 
 
Here's the relevant fragment from my pom.xml which configures the flexmojos 
plugin to build the AIR app:
 
<plugin>
     <groupId>${flexmojos.groupId}</groupId>
    <artifactId>flexmojos-maven-plugin</artifactId>
    <version>${flexmojos.version}</version>
    <extensions>true</extensions>
    <configuration>
     <testTimeout>100000</testTimeout>
     <fonts>
      <managers>
       <manager>flash.fonts.JREFontManager</manager>
       <manager>flash.fonts.AFEFontManager</manager>
       <manager>flash.fonts.CFFFontManager</manager>
      </managers>
     </fonts>
     <sourceFile>IndigoAir.mxml</sourceFile>
     <flexBuilderCompatibility>true</flexBuilderCompatibility>
     <keystore>${basedir}/src/sign.p12</keystore>
     <storepass>flexmojos</storepass>
     <descriptorTemplate>${basedir}/src/IndigoAir-app.xml</descriptorTemplate>
     <ignoreVersionIssues>false</ignoreVersionIssues>
     <coverage>true</coverage>
     <coverageProvider>cobertura</coverageProvider>
     <coverageReportFormat>
      <format>xml</format>
      <format>html</format>
     </coverageReportFormat>
     <useNetwork>true</useNetwork>
     <themes>
      <theme>${project.build.directory}/themes/spark.swc</theme>
     </themes>
     <includeTypes>swc,css</includeTypes>
     <overWriteIfNewer>true</overWriteIfNewer>
     <targetJdk>1.6</targetJdk>
     <timestampURL>none</timestampURL>
     <optimize>true</optimize>
     <framework>spark</framework>
     <dumpConfigAttach>true</dumpConfigAttach>
     <keepGeneratedActionscript>false</keepGeneratedActionscript>
     <keepAs3Metadatas append="true">
      <keepAs3Metadata>Mock</keepAs3Metadata>
      <keepAs3Metadata>BeforeClass</keepAs3Metadata>
      <keepAs3Metadata>AfterClass</keepAs3Metadata>
      <keepAs3Metadata>Before</keepAs3Metadata>
      <keepAs3Metadata>After</keepAs3Metadata>
      <keepAs3Metadata>Rule</keepAs3Metadata>
      <keepAs3Metadata>Suite</keepAs3Metadata>
      <keepAs3Metadata>RunWith</keepAs3Metadata>
      <keepAs3Metadata>Ignore</keepAs3Metadata>
      <keepAs3Metadata>Test</keepAs3Metadata>
      <keepAs3Metadata>DataPoint</keepAs3Metadata>
      <keepAs3Metadata>DataPoints</keepAs3Metadata>
      <keepAs3Metadata>Parameters</keepAs3Metadata>
      <keepAs3Metadata>Theory</keepAs3Metadata>
      <keepAs3Metadata>ArrayElementType</keepAs3Metadata>
      <keepAs3Metadata>Log</keepAs3Metadata>
      <keepAs3Metadata>Transient</keepAs3Metadata>
      <keepAs3Metadata>Inject</keepAs3Metadata>
      <keepAs3Metadata>EventHandler</keepAs3Metadata>
      <keepAs3Metadata>ManagedEvent</keepAs3Metadata>
      <keepAs3Metadata>Dispatcher</keepAs3Metadata>
      <keepAs3Metadata>PostConstruct</keepAs3Metadata>
      <keepAs3Metadata>Mediate</keepAs3Metadata>
      <keepAs3Metadata>Autowire</keepAs3Metadata>
      <keepAs3Metadata>PreDestroy</keepAs3Metadata>
      <keepAs3Metadata>ViewAdded</keepAs3Metadata>
      <keepAs3Metadata>ViewRemoved</keepAs3Metadata>
      <keepAs3Metadata>ViewNavigator</keepAs3Metadata>
     </keepAs3Metadatas>
    </configuration>
   </plugin>
 
 
Can anyone tell me what I'm doing wrong?  Thanks in advance!

-- 
You received this message because you are subscribed to the Google
Groups "Flex Mojos" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/flex-mojos

http://flexmojos.sonatype.org/

Reply via email to