Repository: flex-falcon Updated Branches: refs/heads/develop 94ecff546 -> fd80bfd32
- Added support for compiling the examples to JavaScript (Currently the build seems to produce invalid output) Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/fd80bfd3 Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/fd80bfd3 Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/fd80bfd3 Branch: refs/heads/develop Commit: fd80bfd32a224af13730034f05f9f27793419454 Parents: 94ecff5 Author: Christofer Dutz <[email protected]> Authored: Tue Jun 28 14:13:14 2016 +0200 Committer: Christofer Dutz <[email protected]> Committed: Tue Jun 28 14:13:14 2016 +0200 ---------------------------------------------------------------------- .../org/apache/flex/maven/flexjs/BaseMojo.java | 2 +- .../flex/maven/flexjs/CompileAppMojo.java | 113 +++++- .../resources/config/compile-app-config.xml | 378 ------------------ .../config/compile-app-flash-config.xml | 378 ++++++++++++++++++ .../config/compile-app-javascript-config.xml | 380 +++++++++++++++++++ 5 files changed, 866 insertions(+), 385 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/fd80bfd3/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/BaseMojo.java ---------------------------------------------------------------------- diff --git a/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/BaseMojo.java b/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/BaseMojo.java index 74ce5cf..2548892 100644 --- a/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/BaseMojo.java +++ b/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/BaseMojo.java @@ -69,7 +69,7 @@ public abstract class BaseMojo private boolean includeSources = false; @Parameter - private boolean debug = false; + protected boolean debug = false; @Parameter private Boolean includeLookupOnly = null; http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/fd80bfd3/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/CompileAppMojo.java ---------------------------------------------------------------------- diff --git a/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/CompileAppMojo.java b/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/CompileAppMojo.java index 6aaf7fa..4483227 100644 --- a/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/CompileAppMojo.java +++ b/flexjs-maven-plugin/src/main/java/org/apache/flex/maven/flexjs/CompileAppMojo.java @@ -17,12 +17,19 @@ package org.apache.flex.maven.flexjs; import org.apache.flex.tools.FlexTool; import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugins.annotations.Component; import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; +import org.apache.maven.project.MavenProjectHelper; -import java.io.File; +import java.io.*; +import java.util.Collections; +import java.util.HashSet; import java.util.List; +import java.util.Set; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; /** * goal which compiles a project into a flexjs sef application. @@ -36,13 +43,25 @@ public class CompileAppMojo private String mainClass; @Parameter(defaultValue = "${project.artifactId}-${project.version}.swf") - private String outputFileName; + private String flashOutputFileName; + + @Parameter(defaultValue = "${project.artifactId}-${project.version}.war") + private String javascriptOutputFileName; @Parameter(defaultValue = "namespaces") protected String namespaceDirectory; + @Parameter(defaultValue = "false") + protected boolean outputJavaScript; + + @Component + protected MavenProjectHelper mavenProjectHelper; + @Override protected String getToolGroupName() { + if(outputJavaScript) { + return "FlexJS"; + } return "Falcon"; } @@ -53,12 +72,18 @@ public class CompileAppMojo @Override protected String getConfigFileName() { - return "compile-app-config.xml"; + if(outputJavaScript) { + return "compile-app-javascript-config.xml"; + } + return "compile-app-flash-config.xml"; } @Override protected File getOutput() { - return new File(outputDirectory, outputFileName); + if(outputJavaScript) { + return new File(outputDirectory, "javascript"); + } + return new File(outputDirectory, flashOutputFileName); } @Override @@ -80,8 +105,26 @@ public class CompileAppMojo super.execute(); if(getOutput().exists()) { - // Attach the file created by the compiler as artifact file to maven. - project.getArtifact().setFile(getOutput()); + // If it's JavaScript output we have to zip up the output + // and set the resulting zip file as the artifact file, or + // Maven will complain about missing packaging not assigning + // a file to the build. + if(outputJavaScript) { + File outputArchive = new File(outputDirectory, javascriptOutputFileName); + // If debug is turned on, package the debug output. + if(debug) { + zipDirectory(new File(getOutput(), "bin/js-debug"), outputArchive); + } + // If it's not turned on, package the release-version. + else { + zipDirectory(new File(getOutput(), "bin/js-release"), outputArchive); + } + // Attach the file created by the compiler as artifact file to maven. + mavenProjectHelper.attachArtifact(project, "war", outputArchive); + } else { + // Attach the file created by the compiler as artifact file to maven. + project.getArtifact().setFile(getOutput()); + } } } @@ -145,4 +188,62 @@ public class CompileAppMojo return !"extern".equalsIgnoreCase(library.getClassifier()); } + private void zipDirectory(File source, File target) { + byte[] buffer = new byte[1024]; + try { + FileOutputStream fos = new FileOutputStream(target); + ZipOutputStream zos = new ZipOutputStream(fos); + + FileInputStream in = null; + Set<String> files = getFiles(source, source); + for (String file : files) { + ZipEntry ze = new ZipEntry(file); + try { + zos.putNextEntry(ze); + in = new FileInputStream(source + File.separator + file); + int len; + while ((len = in.read(buffer)) > 0) { + zos.write(buffer, 0, len); + } + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (in != null) { + try { + in.close(); + } catch (IOException e) { + // Ignore ... + } + } + } + } + zos.close(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + private Set<String> getFiles(File source, File curFile) { + if(curFile.isDirectory()) { + Set<String> files = new HashSet<String>(); + File[] children = curFile.listFiles(); + if(children != null) { + for (File child : children) { + if(child.isFile()) { + String curFileRelativePath = child.getPath().substring(source.getPath().length() + 1); + files.add(curFileRelativePath); + } else { + files.addAll(getFiles(source, child)); + } + } + } + return files; + } else { + String curFileRelativePath = curFile.getPath().substring(source.getPath().length() + 1); + return Collections.singleton(curFileRelativePath); + } + } + } http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/fd80bfd3/flexjs-maven-plugin/src/main/resources/config/compile-app-config.xml ---------------------------------------------------------------------- diff --git a/flexjs-maven-plugin/src/main/resources/config/compile-app-config.xml b/flexjs-maven-plugin/src/main/resources/config/compile-app-config.xml deleted file mode 100644 index 2b30745..0000000 --- a/flexjs-maven-plugin/src/main/resources/config/compile-app-config.xml +++ /dev/null @@ -1,378 +0,0 @@ -<?xml version="1.0"?> - -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - - -<flex-config> - <!-- Specifies the version of the compiled SWF --> - <swf-version>14</swf-version> - - <output>${output}</output> - - <compiler> - - <!-- Turn on generation of accessible SWFs. --> - <accessible>true</accessible> - - <!-- Specifies the locales for internationalization. --> - <locale> - <locale-element>en_US</locale-element> - </locale> - - <!-- List of path elements that form the roots of ActionScript class hierarchies. --> - <source-path> -#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> -#end - </source-path> - - <!-- Allow the source-path to have path-elements which contain other path-elements --> - <allow-source-path-overlap>false</allow-source-path-overlap> - - <!-- Run the AS3 compiler in a mode that detects legal but potentially incorrect --> - <!-- code. --> - <show-actionscript-warnings>true</show-actionscript-warnings> - - <!-- Turn on generation of debuggable SWFs. False by default for mxmlc, --> - <debug>$debug</debug> - - <!-- List of SWC files or directories to compile against but to omit from --> - <!-- linking. --> - <external-library-path> -#foreach($artifact in $externalLibraries) <path-element>$artifact.file</path-element> -#end - </external-library-path> - - <!-- Turn on writing of generated/*.as files to disk. These files are generated by --> - <!-- the compiler during mxml translation and are helpful with understanding and --> - <!-- debugging Flex applications. --> - <keep-generated-actionscript>false</keep-generated-actionscript> - - <!-- not set --> - <!-- - <include-libraries> - <library>string</library> - </include-libraries> - --> - - <!-- List of SWC files or directories that contain SWC files. --> - <library-path> -#foreach($artifact in $libraries) <path-element>$artifact.file</path-element> -#end - </library-path> - - <mxml> - <children-as-data>true</children-as-data> - <imports> - <implicit-import>org.apache.flex.events.*</implicit-import> - <implicit-import>org.apache.flex.geom.*</implicit-import> - <implicit-import>org.apache.flex.core.ClassFactory</implicit-import> - <implicit-import>org.apache.flex.core.IFactory</implicit-import> - </imports> - </mxml> - <binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event> - <binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind> - <binding-value-change-event-type>valueChange</binding-value-change-event-type> - <binding-event-handler-event>org.apache.flex.events.Event</binding-event-handler-event> - <binding-event-handler-class>org.apache.flex.events.EventDispatcher</binding-event-handler-class> - <states-class>org.apache.flex.states.State</states-class> - <states-instance-override-class>org.apache.flex.states.AddItems</states-instance-override-class> - <states-property-override-class>org.apache.flex.states.SetProperty</states-property-override-class> - <states-event-override-class>org.apache.flex.states.SetEventHandler</states-event-override-class> - <component-factory-class>org.apache.flex.core.ClassFactory</component-factory-class> - <component-factory-interface>org.apache.flex.core.IFactory</component-factory-interface> - - <namespaces> -#foreach($namespace in $namespaces) <namespace> - <uri>$namespace.uri</uri> - <manifest>$namespace.manifest</manifest> - </namespace> -#end - </namespaces> - - <!-- Enable post-link SWF optimization. --> - <optimize>true</optimize> - - <!-- Enable trace statement omission. --> - <omit-trace-statements>true</omit-trace-statements> - - <!-- Keep the following AS3 metadata in the bytecodes. --> - <!-- Warning: For the data binding feature in the Flex framework to work properly, --> - <!-- the following metadata must be kept: --> - <!-- 1. Bindable --> - <!-- 2. Managed --> - <!-- 3. ChangeEvent --> - <!-- 4. NonCommittingChangeEvent --> - <!-- 5. Transient --> - <!-- - <keep-as3-metadata> - <name>Bindable</name> - <name>Managed</name> - <name>ChangeEvent</name> - <name>NonCommittingChangeEvent</name> - <name>Transient</name> - </keep-as3-metadata> - --> - - <!-- Turn on reporting of data binding warnings. For example: Warning: Data binding --> - <!-- will not be able to detect assignments to "foo". --> - <show-binding-warnings>true</show-binding-warnings> - - <!-- toggle whether warnings generated from unused type selectors are displayed --> - <show-unused-type-selector-warnings>true</show-unused-type-selector-warnings> - - <!-- Run the AS3 compiler in strict error checking mode. --> - <strict>true</strict> - - <!-- Use the ActionScript 3 class based object model for greater performance and better error reporting. --> - <!-- In the class based object model most built-in functions are implemented as fixed methods of classes --> - <!-- (-strict is recommended, but not required, for earlier errors) --> - <as3>true</as3> - - <!-- Use the ECMAScript edition 3 prototype based object model to allow dynamic overriding of prototype --> - <!-- properties. In the prototype based object model built-in functions are implemented as dynamic --> - <!-- properties of prototype objects (-strict is allowed, but may result in compiler errors for --> - <!-- references to dynamic properties) --> - <es>false</es> - - <!-- List of CSS or SWC files to apply as a theme. --> - <theme> - </theme> - - <!-- Turns on the display of stack traces for uncaught runtime errors. --> - <verbose-stacktraces>false</verbose-stacktraces> - - <!-- Defines the AS3 file encoding. --> - <!-- not set --> - <!-- - <actionscript-file-encoding></actionscript-file-encoding> - --> - - <fonts> - - <!-- Enables advanced anti-aliasing for embedded fonts, which provides greater clarity for small --> - <!-- fonts. This setting can be overriden in CSS for specific fonts. --> - <!-- NOTE: flash-type has been deprecated. Please use advanced-anti-aliasing <flash-type>true</flash-type> --> - <advanced-anti-aliasing>true</advanced-anti-aliasing> - - <!-- The number of embedded font faces that are cached. --> - <max-cached-fonts>20</max-cached-fonts> - - <!-- The number of character glyph outlines to cache for each font face. --> - <max-glyphs-per-face>1000</max-glyphs-per-face> - - <!-- Defines ranges that can be used across multiple font-face declarations. --> - <!-- See flash-unicode-table.xml for more examples. --> - <!-- not set --> - <!-- - <languages> - <language-range> - <lang>englishRange</lang> - <range>U+0020-007E</range> - </language-range> - </languages> - --> - - <!-- Compiler font manager classes, in policy resolution order --> - <!-- NOTE: For Apache Flex --> - <!-- AFEFontManager and CFFFontManager both use proprietary technology. --> - <!-- You must install the optional font jars if you wish to use embedded fonts --> - <!-- directly or you can use fontswf to precompile the font as a swf. --> - <managers> - <manager-class>flash.fonts.JREFontManager</manager-class> - <manager-class>flash.fonts.BatikFontManager</manager-class> - <manager-class>flash.fonts.AFEFontManager</manager-class> - <manager-class>flash.fonts.CFFFontManager</manager-class> - </managers> - - <!-- File containing cached system font licensing information produced via - java -cp mxmlc.jar flex2.tools.FontSnapshot (fontpath) - Will default to winFonts.ser on Windows XP and - macFonts.ser on Mac OS X, so is commented out by default. - - <local-fonts-snapshot>localFonts.ser</local-fonts-snapshot> - --> - - </fonts> - - <!-- Array.toString() format has changed. --> - <warn-array-tostring-changes>false</warn-array-tostring-changes> - - <!-- Assignment within conditional. --> - <warn-assignment-within-conditional>true</warn-assignment-within-conditional> - - <!-- Possibly invalid Array cast operation. --> - <warn-bad-array-cast>true</warn-bad-array-cast> - - <!-- Non-Boolean value used where a Boolean value was expected. --> - <warn-bad-bool-assignment>true</warn-bad-bool-assignment> - - <!-- Invalid Date cast operation. --> - <warn-bad-date-cast>true</warn-bad-date-cast> - - <!-- Unknown method. --> - <warn-bad-es3-type-method>true</warn-bad-es3-type-method> - - <!-- Unknown property. --> - <warn-bad-es3-type-prop>true</warn-bad-es3-type-prop> - - <!-- Illogical comparison with NaN. Any comparison operation involving NaN will evaluate to false because NaN != NaN. --> - <warn-bad-nan-comparison>true</warn-bad-nan-comparison> - - <!-- Impossible assignment to null. --> - <warn-bad-null-assignment>true</warn-bad-null-assignment> - - <!-- Illogical comparison with null. --> - <warn-bad-null-comparison>true</warn-bad-null-comparison> - - <!-- Illogical comparison with undefined. Only untyped variables (or variables of type *) can be undefined. --> - <warn-bad-undefined-comparison>true</warn-bad-undefined-comparison> - - <!-- Boolean() with no arguments returns false in ActionScript 3.0. Boolean() returned undefined in ActionScript 2.0. --> - <warn-boolean-constructor-with-no-args>false</warn-boolean-constructor-with-no-args> - - <!-- __resolve is no longer supported. --> - <warn-changes-in-resolve>false</warn-changes-in-resolve> - - <!-- Class is sealed. It cannot have members added to it dynamically. --> - <warn-class-is-sealed>true</warn-class-is-sealed> - - <!-- Constant not initialized. --> - <warn-const-not-initialized>true</warn-const-not-initialized> - - <!-- Function used in new expression returns a value. Result will be what the --> - <!-- function returns, rather than a new instance of that function. --> - <warn-constructor-returns-value>false</warn-constructor-returns-value> - - <!-- EventHandler was not added as a listener. --> - <warn-deprecated-event-handler-error>false</warn-deprecated-event-handler-error> - - <!-- Unsupported ActionScript 2.0 function. --> - <warn-deprecated-function-error>true</warn-deprecated-function-error> - - <!-- Unsupported ActionScript 2.0 property. --> - <warn-deprecated-property-error>true</warn-deprecated-property-error> - - <!-- More than one argument by the same name. --> - <warn-duplicate-argument-names>true</warn-duplicate-argument-names> - - <!-- Duplicate variable definition --> - <warn-duplicate-variable-def>true</warn-duplicate-variable-def> - - <!-- ActionScript 3.0 iterates over an object's properties within a "for x in target" statement in random order. --> - <warn-for-var-in-changes>false</warn-for-var-in-changes> - - <!-- Importing a package by the same name as the current class will hide that class identifier in this scope. --> - <warn-import-hides-class>true</warn-import-hides-class> - - <!-- Use of the instanceof operator. --> - <warn-instance-of-changes>true</warn-instance-of-changes> - - <!-- Internal error in compiler. --> - <warn-internal-error>true</warn-internal-error> - - <!-- _level is no longer supported. For more information, see the flash.display package. --> - <warn-level-not-supported>true</warn-level-not-supported> - - <!-- Missing namespace declaration (e.g. variable is not defined to be public, private, etc.). --> - <warn-missing-namespace-decl>true</warn-missing-namespace-decl> - - <!-- Negative value will become a large positive value when assigned to a uint data type. --> - <warn-negative-uint-literal>true</warn-negative-uint-literal> - - <!-- Missing constructor. --> - <warn-no-constructor>false</warn-no-constructor> - - <!-- The super() statement was not called within the constructor. --> - <warn-no-explicit-super-call-in-constructor>false</warn-no-explicit-super-call-in-constructor> - - <!-- Missing type declaration. --> - <warn-no-type-decl>true</warn-no-type-decl> - - <!-- In ActionScript 3.0, white space is ignored and '' returns 0. Number() returns --> - <!-- NaN in ActionScript 2.0 when the parameter is '' or contains white space. --> - <warn-number-from-string-changes>false</warn-number-from-string-changes> - - <!-- Change in scoping for the this keyword. Class methods extracted from an --> - <!-- instance of a class will always resolve this back to that instance. In --> - <!-- ActionScript 2.0 this is looked up dynamically based on where the method --> - <!-- is invoked from. --> - <warn-scoping-change-in-this>false</warn-scoping-change-in-this> - - <!-- Inefficient use of += on a TextField.--> - <warn-slow-text-field-addition>true</warn-slow-text-field-addition> - - <!-- Possible missing parentheses. --> - <warn-unlikely-function-value>true</warn-unlikely-function-value> - - <!-- Possible usage of the ActionScript 2.0 XML class. --> - <warn-xml-class-has-changed>false</warn-xml-class-has-changed> - -#foreach($define in $defines) <define> - <name>$define.name</name> - <value>$define.value</value> - </define> -#end - - </compiler> - -#if($includeSources) - <include-sources> -#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> -#end - </include-sources> -#end - -#if($includeClasses) - <include-classes> -#foreach($includeClass in $includeClasses) <class>$includeClass</class> -#end - </include-classes> -#end - - <!-- compute-digest: writes a digest to the catalog.xml of a library. Use this when the library will be used as a - cross-domain rsl.--> - <!-- compute-digest usage: - <compute-digest>boolean</compute-digest> - --> - - <!-- remove-unused-rsls: remove RSLs that are not being used by the application--> - <remove-unused-rsls>true</remove-unused-rsls> - - <!-- static-link-runtime-shared-libraries: statically link the libraries specified by the -runtime-shared-libraries-path option.--> - <static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries> - - <!-- target-player: specifies the version of the player the application is targeting. - Features requiring a later version will not be compiled into the application. - The minimum value supported is "9.0.0".--> - <target-player>${targetPlayer}</target-player> - - <!-- Enables SWFs to access the network. --> - <use-network>true</use-network> - - <!-- Metadata added to SWFs via the SWF Metadata tag. --> - <metadata> - <title>Apache FlexJS Application</title> - <description>http://flex.apache.org/</description> - <publisher>Apache Software Foundation</publisher> - <creator>unknown</creator> - <language>EN</language> - </metadata> - -</flex-config> http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/fd80bfd3/flexjs-maven-plugin/src/main/resources/config/compile-app-flash-config.xml ---------------------------------------------------------------------- diff --git a/flexjs-maven-plugin/src/main/resources/config/compile-app-flash-config.xml b/flexjs-maven-plugin/src/main/resources/config/compile-app-flash-config.xml new file mode 100644 index 0000000..2b30745 --- /dev/null +++ b/flexjs-maven-plugin/src/main/resources/config/compile-app-flash-config.xml @@ -0,0 +1,378 @@ +<?xml version="1.0"?> + +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> + + +<flex-config> + <!-- Specifies the version of the compiled SWF --> + <swf-version>14</swf-version> + + <output>${output}</output> + + <compiler> + + <!-- Turn on generation of accessible SWFs. --> + <accessible>true</accessible> + + <!-- Specifies the locales for internationalization. --> + <locale> + <locale-element>en_US</locale-element> + </locale> + + <!-- List of path elements that form the roots of ActionScript class hierarchies. --> + <source-path> +#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> +#end + </source-path> + + <!-- Allow the source-path to have path-elements which contain other path-elements --> + <allow-source-path-overlap>false</allow-source-path-overlap> + + <!-- Run the AS3 compiler in a mode that detects legal but potentially incorrect --> + <!-- code. --> + <show-actionscript-warnings>true</show-actionscript-warnings> + + <!-- Turn on generation of debuggable SWFs. False by default for mxmlc, --> + <debug>$debug</debug> + + <!-- List of SWC files or directories to compile against but to omit from --> + <!-- linking. --> + <external-library-path> +#foreach($artifact in $externalLibraries) <path-element>$artifact.file</path-element> +#end + </external-library-path> + + <!-- Turn on writing of generated/*.as files to disk. These files are generated by --> + <!-- the compiler during mxml translation and are helpful with understanding and --> + <!-- debugging Flex applications. --> + <keep-generated-actionscript>false</keep-generated-actionscript> + + <!-- not set --> + <!-- + <include-libraries> + <library>string</library> + </include-libraries> + --> + + <!-- List of SWC files or directories that contain SWC files. --> + <library-path> +#foreach($artifact in $libraries) <path-element>$artifact.file</path-element> +#end + </library-path> + + <mxml> + <children-as-data>true</children-as-data> + <imports> + <implicit-import>org.apache.flex.events.*</implicit-import> + <implicit-import>org.apache.flex.geom.*</implicit-import> + <implicit-import>org.apache.flex.core.ClassFactory</implicit-import> + <implicit-import>org.apache.flex.core.IFactory</implicit-import> + </imports> + </mxml> + <binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event> + <binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind> + <binding-value-change-event-type>valueChange</binding-value-change-event-type> + <binding-event-handler-event>org.apache.flex.events.Event</binding-event-handler-event> + <binding-event-handler-class>org.apache.flex.events.EventDispatcher</binding-event-handler-class> + <states-class>org.apache.flex.states.State</states-class> + <states-instance-override-class>org.apache.flex.states.AddItems</states-instance-override-class> + <states-property-override-class>org.apache.flex.states.SetProperty</states-property-override-class> + <states-event-override-class>org.apache.flex.states.SetEventHandler</states-event-override-class> + <component-factory-class>org.apache.flex.core.ClassFactory</component-factory-class> + <component-factory-interface>org.apache.flex.core.IFactory</component-factory-interface> + + <namespaces> +#foreach($namespace in $namespaces) <namespace> + <uri>$namespace.uri</uri> + <manifest>$namespace.manifest</manifest> + </namespace> +#end + </namespaces> + + <!-- Enable post-link SWF optimization. --> + <optimize>true</optimize> + + <!-- Enable trace statement omission. --> + <omit-trace-statements>true</omit-trace-statements> + + <!-- Keep the following AS3 metadata in the bytecodes. --> + <!-- Warning: For the data binding feature in the Flex framework to work properly, --> + <!-- the following metadata must be kept: --> + <!-- 1. Bindable --> + <!-- 2. Managed --> + <!-- 3. ChangeEvent --> + <!-- 4. NonCommittingChangeEvent --> + <!-- 5. Transient --> + <!-- + <keep-as3-metadata> + <name>Bindable</name> + <name>Managed</name> + <name>ChangeEvent</name> + <name>NonCommittingChangeEvent</name> + <name>Transient</name> + </keep-as3-metadata> + --> + + <!-- Turn on reporting of data binding warnings. For example: Warning: Data binding --> + <!-- will not be able to detect assignments to "foo". --> + <show-binding-warnings>true</show-binding-warnings> + + <!-- toggle whether warnings generated from unused type selectors are displayed --> + <show-unused-type-selector-warnings>true</show-unused-type-selector-warnings> + + <!-- Run the AS3 compiler in strict error checking mode. --> + <strict>true</strict> + + <!-- Use the ActionScript 3 class based object model for greater performance and better error reporting. --> + <!-- In the class based object model most built-in functions are implemented as fixed methods of classes --> + <!-- (-strict is recommended, but not required, for earlier errors) --> + <as3>true</as3> + + <!-- Use the ECMAScript edition 3 prototype based object model to allow dynamic overriding of prototype --> + <!-- properties. In the prototype based object model built-in functions are implemented as dynamic --> + <!-- properties of prototype objects (-strict is allowed, but may result in compiler errors for --> + <!-- references to dynamic properties) --> + <es>false</es> + + <!-- List of CSS or SWC files to apply as a theme. --> + <theme> + </theme> + + <!-- Turns on the display of stack traces for uncaught runtime errors. --> + <verbose-stacktraces>false</verbose-stacktraces> + + <!-- Defines the AS3 file encoding. --> + <!-- not set --> + <!-- + <actionscript-file-encoding></actionscript-file-encoding> + --> + + <fonts> + + <!-- Enables advanced anti-aliasing for embedded fonts, which provides greater clarity for small --> + <!-- fonts. This setting can be overriden in CSS for specific fonts. --> + <!-- NOTE: flash-type has been deprecated. Please use advanced-anti-aliasing <flash-type>true</flash-type> --> + <advanced-anti-aliasing>true</advanced-anti-aliasing> + + <!-- The number of embedded font faces that are cached. --> + <max-cached-fonts>20</max-cached-fonts> + + <!-- The number of character glyph outlines to cache for each font face. --> + <max-glyphs-per-face>1000</max-glyphs-per-face> + + <!-- Defines ranges that can be used across multiple font-face declarations. --> + <!-- See flash-unicode-table.xml for more examples. --> + <!-- not set --> + <!-- + <languages> + <language-range> + <lang>englishRange</lang> + <range>U+0020-007E</range> + </language-range> + </languages> + --> + + <!-- Compiler font manager classes, in policy resolution order --> + <!-- NOTE: For Apache Flex --> + <!-- AFEFontManager and CFFFontManager both use proprietary technology. --> + <!-- You must install the optional font jars if you wish to use embedded fonts --> + <!-- directly or you can use fontswf to precompile the font as a swf. --> + <managers> + <manager-class>flash.fonts.JREFontManager</manager-class> + <manager-class>flash.fonts.BatikFontManager</manager-class> + <manager-class>flash.fonts.AFEFontManager</manager-class> + <manager-class>flash.fonts.CFFFontManager</manager-class> + </managers> + + <!-- File containing cached system font licensing information produced via + java -cp mxmlc.jar flex2.tools.FontSnapshot (fontpath) + Will default to winFonts.ser on Windows XP and + macFonts.ser on Mac OS X, so is commented out by default. + + <local-fonts-snapshot>localFonts.ser</local-fonts-snapshot> + --> + + </fonts> + + <!-- Array.toString() format has changed. --> + <warn-array-tostring-changes>false</warn-array-tostring-changes> + + <!-- Assignment within conditional. --> + <warn-assignment-within-conditional>true</warn-assignment-within-conditional> + + <!-- Possibly invalid Array cast operation. --> + <warn-bad-array-cast>true</warn-bad-array-cast> + + <!-- Non-Boolean value used where a Boolean value was expected. --> + <warn-bad-bool-assignment>true</warn-bad-bool-assignment> + + <!-- Invalid Date cast operation. --> + <warn-bad-date-cast>true</warn-bad-date-cast> + + <!-- Unknown method. --> + <warn-bad-es3-type-method>true</warn-bad-es3-type-method> + + <!-- Unknown property. --> + <warn-bad-es3-type-prop>true</warn-bad-es3-type-prop> + + <!-- Illogical comparison with NaN. Any comparison operation involving NaN will evaluate to false because NaN != NaN. --> + <warn-bad-nan-comparison>true</warn-bad-nan-comparison> + + <!-- Impossible assignment to null. --> + <warn-bad-null-assignment>true</warn-bad-null-assignment> + + <!-- Illogical comparison with null. --> + <warn-bad-null-comparison>true</warn-bad-null-comparison> + + <!-- Illogical comparison with undefined. Only untyped variables (or variables of type *) can be undefined. --> + <warn-bad-undefined-comparison>true</warn-bad-undefined-comparison> + + <!-- Boolean() with no arguments returns false in ActionScript 3.0. Boolean() returned undefined in ActionScript 2.0. --> + <warn-boolean-constructor-with-no-args>false</warn-boolean-constructor-with-no-args> + + <!-- __resolve is no longer supported. --> + <warn-changes-in-resolve>false</warn-changes-in-resolve> + + <!-- Class is sealed. It cannot have members added to it dynamically. --> + <warn-class-is-sealed>true</warn-class-is-sealed> + + <!-- Constant not initialized. --> + <warn-const-not-initialized>true</warn-const-not-initialized> + + <!-- Function used in new expression returns a value. Result will be what the --> + <!-- function returns, rather than a new instance of that function. --> + <warn-constructor-returns-value>false</warn-constructor-returns-value> + + <!-- EventHandler was not added as a listener. --> + <warn-deprecated-event-handler-error>false</warn-deprecated-event-handler-error> + + <!-- Unsupported ActionScript 2.0 function. --> + <warn-deprecated-function-error>true</warn-deprecated-function-error> + + <!-- Unsupported ActionScript 2.0 property. --> + <warn-deprecated-property-error>true</warn-deprecated-property-error> + + <!-- More than one argument by the same name. --> + <warn-duplicate-argument-names>true</warn-duplicate-argument-names> + + <!-- Duplicate variable definition --> + <warn-duplicate-variable-def>true</warn-duplicate-variable-def> + + <!-- ActionScript 3.0 iterates over an object's properties within a "for x in target" statement in random order. --> + <warn-for-var-in-changes>false</warn-for-var-in-changes> + + <!-- Importing a package by the same name as the current class will hide that class identifier in this scope. --> + <warn-import-hides-class>true</warn-import-hides-class> + + <!-- Use of the instanceof operator. --> + <warn-instance-of-changes>true</warn-instance-of-changes> + + <!-- Internal error in compiler. --> + <warn-internal-error>true</warn-internal-error> + + <!-- _level is no longer supported. For more information, see the flash.display package. --> + <warn-level-not-supported>true</warn-level-not-supported> + + <!-- Missing namespace declaration (e.g. variable is not defined to be public, private, etc.). --> + <warn-missing-namespace-decl>true</warn-missing-namespace-decl> + + <!-- Negative value will become a large positive value when assigned to a uint data type. --> + <warn-negative-uint-literal>true</warn-negative-uint-literal> + + <!-- Missing constructor. --> + <warn-no-constructor>false</warn-no-constructor> + + <!-- The super() statement was not called within the constructor. --> + <warn-no-explicit-super-call-in-constructor>false</warn-no-explicit-super-call-in-constructor> + + <!-- Missing type declaration. --> + <warn-no-type-decl>true</warn-no-type-decl> + + <!-- In ActionScript 3.0, white space is ignored and '' returns 0. Number() returns --> + <!-- NaN in ActionScript 2.0 when the parameter is '' or contains white space. --> + <warn-number-from-string-changes>false</warn-number-from-string-changes> + + <!-- Change in scoping for the this keyword. Class methods extracted from an --> + <!-- instance of a class will always resolve this back to that instance. In --> + <!-- ActionScript 2.0 this is looked up dynamically based on where the method --> + <!-- is invoked from. --> + <warn-scoping-change-in-this>false</warn-scoping-change-in-this> + + <!-- Inefficient use of += on a TextField.--> + <warn-slow-text-field-addition>true</warn-slow-text-field-addition> + + <!-- Possible missing parentheses. --> + <warn-unlikely-function-value>true</warn-unlikely-function-value> + + <!-- Possible usage of the ActionScript 2.0 XML class. --> + <warn-xml-class-has-changed>false</warn-xml-class-has-changed> + +#foreach($define in $defines) <define> + <name>$define.name</name> + <value>$define.value</value> + </define> +#end + + </compiler> + +#if($includeSources) + <include-sources> +#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> +#end + </include-sources> +#end + +#if($includeClasses) + <include-classes> +#foreach($includeClass in $includeClasses) <class>$includeClass</class> +#end + </include-classes> +#end + + <!-- compute-digest: writes a digest to the catalog.xml of a library. Use this when the library will be used as a + cross-domain rsl.--> + <!-- compute-digest usage: + <compute-digest>boolean</compute-digest> + --> + + <!-- remove-unused-rsls: remove RSLs that are not being used by the application--> + <remove-unused-rsls>true</remove-unused-rsls> + + <!-- static-link-runtime-shared-libraries: statically link the libraries specified by the -runtime-shared-libraries-path option.--> + <static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries> + + <!-- target-player: specifies the version of the player the application is targeting. + Features requiring a later version will not be compiled into the application. + The minimum value supported is "9.0.0".--> + <target-player>${targetPlayer}</target-player> + + <!-- Enables SWFs to access the network. --> + <use-network>true</use-network> + + <!-- Metadata added to SWFs via the SWF Metadata tag. --> + <metadata> + <title>Apache FlexJS Application</title> + <description>http://flex.apache.org/</description> + <publisher>Apache Software Foundation</publisher> + <creator>unknown</creator> + <language>EN</language> + </metadata> + +</flex-config> http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/fd80bfd3/flexjs-maven-plugin/src/main/resources/config/compile-app-javascript-config.xml ---------------------------------------------------------------------- diff --git a/flexjs-maven-plugin/src/main/resources/config/compile-app-javascript-config.xml b/flexjs-maven-plugin/src/main/resources/config/compile-app-javascript-config.xml new file mode 100644 index 0000000..4f75494 --- /dev/null +++ b/flexjs-maven-plugin/src/main/resources/config/compile-app-javascript-config.xml @@ -0,0 +1,380 @@ +<?xml version="1.0"?> + +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> + + +<flex-config> + + <js-output-type>FLEXJS</js-output-type> + <!-- Specifies the version of the compiled SWF --> + <swf-version>14</swf-version> + + <output>${output}</output> + + <compiler> + + <!-- Turn on generation of accessible SWFs. --> + <accessible>true</accessible> + + <!-- Specifies the locales for internationalization. --> + <locale> + <locale-element>en_US</locale-element> + </locale> + + <!-- List of path elements that form the roots of ActionScript class hierarchies. --> + <source-path> +#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> +#end + </source-path> + + <!-- Allow the source-path to have path-elements which contain other path-elements --> + <allow-source-path-overlap>false</allow-source-path-overlap> + + <!-- Run the AS3 compiler in a mode that detects legal but potentially incorrect --> + <!-- code. --> + <show-actionscript-warnings>true</show-actionscript-warnings> + + <!-- Turn on generation of debuggable SWFs. False by default for mxmlc, --> + <debug>$debug</debug> + + <!-- List of SWC files or directories to compile against but to omit from --> + <!-- linking. --> + <external-library-path> +#foreach($artifact in $externalLibraries) <path-element>$artifact.file</path-element> +#end + </external-library-path> + + <!-- Turn on writing of generated/*.as files to disk. These files are generated by --> + <!-- the compiler during mxml translation and are helpful with understanding and --> + <!-- debugging Flex applications. --> + <keep-generated-actionscript>false</keep-generated-actionscript> + + <!-- not set --> + <!-- + <include-libraries> + <library>string</library> + </include-libraries> + --> + + <!-- List of SWC files or directories that contain SWC files. --> + <library-path> +#foreach($artifact in $libraries) <path-element>$artifact.file</path-element> +#end + </library-path> + + <mxml> + <children-as-data>true</children-as-data> + <imports> + <implicit-import>org.apache.flex.events.*</implicit-import> + <implicit-import>org.apache.flex.geom.*</implicit-import> + <implicit-import>org.apache.flex.core.ClassFactory</implicit-import> + <implicit-import>org.apache.flex.core.IFactory</implicit-import> + </imports> + </mxml> + <binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event> + <binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind> + <binding-value-change-event-type>valueChange</binding-value-change-event-type> + <binding-event-handler-event>org.apache.flex.events.Event</binding-event-handler-event> + <binding-event-handler-class>org.apache.flex.events.EventDispatcher</binding-event-handler-class> + <states-class>org.apache.flex.states.State</states-class> + <states-instance-override-class>org.apache.flex.states.AddItems</states-instance-override-class> + <states-property-override-class>org.apache.flex.states.SetProperty</states-property-override-class> + <states-event-override-class>org.apache.flex.states.SetEventHandler</states-event-override-class> + <component-factory-class>org.apache.flex.core.ClassFactory</component-factory-class> + <component-factory-interface>org.apache.flex.core.IFactory</component-factory-interface> + + <namespaces> +#foreach($namespace in $namespaces) <namespace> + <uri>$namespace.uri</uri> + <manifest>$namespace.manifest</manifest> + </namespace> +#end + </namespaces> + + <!-- Enable post-link SWF optimization. --> + <optimize>true</optimize> + + <!-- Enable trace statement omission. --> + <omit-trace-statements>true</omit-trace-statements> + + <!-- Keep the following AS3 metadata in the bytecodes. --> + <!-- Warning: For the data binding feature in the Flex framework to work properly, --> + <!-- the following metadata must be kept: --> + <!-- 1. Bindable --> + <!-- 2. Managed --> + <!-- 3. ChangeEvent --> + <!-- 4. NonCommittingChangeEvent --> + <!-- 5. Transient --> + <!-- + <keep-as3-metadata> + <name>Bindable</name> + <name>Managed</name> + <name>ChangeEvent</name> + <name>NonCommittingChangeEvent</name> + <name>Transient</name> + </keep-as3-metadata> + --> + + <!-- Turn on reporting of data binding warnings. For example: Warning: Data binding --> + <!-- will not be able to detect assignments to "foo". --> + <show-binding-warnings>true</show-binding-warnings> + + <!-- toggle whether warnings generated from unused type selectors are displayed --> + <show-unused-type-selector-warnings>true</show-unused-type-selector-warnings> + + <!-- Run the AS3 compiler in strict error checking mode. --> + <strict>true</strict> + + <!-- Use the ActionScript 3 class based object model for greater performance and better error reporting. --> + <!-- In the class based object model most built-in functions are implemented as fixed methods of classes --> + <!-- (-strict is recommended, but not required, for earlier errors) --> + <as3>true</as3> + + <!-- Use the ECMAScript edition 3 prototype based object model to allow dynamic overriding of prototype --> + <!-- properties. In the prototype based object model built-in functions are implemented as dynamic --> + <!-- properties of prototype objects (-strict is allowed, but may result in compiler errors for --> + <!-- references to dynamic properties) --> + <es>false</es> + + <!-- List of CSS or SWC files to apply as a theme. --> + <theme> + </theme> + + <!-- Turns on the display of stack traces for uncaught runtime errors. --> + <verbose-stacktraces>false</verbose-stacktraces> + + <!-- Defines the AS3 file encoding. --> + <!-- not set --> + <!-- + <actionscript-file-encoding></actionscript-file-encoding> + --> + + <fonts> + + <!-- Enables advanced anti-aliasing for embedded fonts, which provides greater clarity for small --> + <!-- fonts. This setting can be overriden in CSS for specific fonts. --> + <!-- NOTE: flash-type has been deprecated. Please use advanced-anti-aliasing <flash-type>true</flash-type> --> + <advanced-anti-aliasing>true</advanced-anti-aliasing> + + <!-- The number of embedded font faces that are cached. --> + <max-cached-fonts>20</max-cached-fonts> + + <!-- The number of character glyph outlines to cache for each font face. --> + <max-glyphs-per-face>1000</max-glyphs-per-face> + + <!-- Defines ranges that can be used across multiple font-face declarations. --> + <!-- See flash-unicode-table.xml for more examples. --> + <!-- not set --> + <!-- + <languages> + <language-range> + <lang>englishRange</lang> + <range>U+0020-007E</range> + </language-range> + </languages> + --> + + <!-- Compiler font manager classes, in policy resolution order --> + <!-- NOTE: For Apache Flex --> + <!-- AFEFontManager and CFFFontManager both use proprietary technology. --> + <!-- You must install the optional font jars if you wish to use embedded fonts --> + <!-- directly or you can use fontswf to precompile the font as a swf. --> + <managers> + <manager-class>flash.fonts.JREFontManager</manager-class> + <manager-class>flash.fonts.BatikFontManager</manager-class> + <manager-class>flash.fonts.AFEFontManager</manager-class> + <manager-class>flash.fonts.CFFFontManager</manager-class> + </managers> + + <!-- File containing cached system font licensing information produced via + java -cp mxmlc.jar flex2.tools.FontSnapshot (fontpath) + Will default to winFonts.ser on Windows XP and + macFonts.ser on Mac OS X, so is commented out by default. + + <local-fonts-snapshot>localFonts.ser</local-fonts-snapshot> + --> + + </fonts> + + <!-- Array.toString() format has changed. --> + <warn-array-tostring-changes>false</warn-array-tostring-changes> + + <!-- Assignment within conditional. --> + <warn-assignment-within-conditional>true</warn-assignment-within-conditional> + + <!-- Possibly invalid Array cast operation. --> + <warn-bad-array-cast>true</warn-bad-array-cast> + + <!-- Non-Boolean value used where a Boolean value was expected. --> + <warn-bad-bool-assignment>true</warn-bad-bool-assignment> + + <!-- Invalid Date cast operation. --> + <warn-bad-date-cast>true</warn-bad-date-cast> + + <!-- Unknown method. --> + <warn-bad-es3-type-method>true</warn-bad-es3-type-method> + + <!-- Unknown property. --> + <warn-bad-es3-type-prop>true</warn-bad-es3-type-prop> + + <!-- Illogical comparison with NaN. Any comparison operation involving NaN will evaluate to false because NaN != NaN. --> + <warn-bad-nan-comparison>true</warn-bad-nan-comparison> + + <!-- Impossible assignment to null. --> + <warn-bad-null-assignment>true</warn-bad-null-assignment> + + <!-- Illogical comparison with null. --> + <warn-bad-null-comparison>true</warn-bad-null-comparison> + + <!-- Illogical comparison with undefined. Only untyped variables (or variables of type *) can be undefined. --> + <warn-bad-undefined-comparison>true</warn-bad-undefined-comparison> + + <!-- Boolean() with no arguments returns false in ActionScript 3.0. Boolean() returned undefined in ActionScript 2.0. --> + <warn-boolean-constructor-with-no-args>false</warn-boolean-constructor-with-no-args> + + <!-- __resolve is no longer supported. --> + <warn-changes-in-resolve>false</warn-changes-in-resolve> + + <!-- Class is sealed. It cannot have members added to it dynamically. --> + <warn-class-is-sealed>true</warn-class-is-sealed> + + <!-- Constant not initialized. --> + <warn-const-not-initialized>true</warn-const-not-initialized> + + <!-- Function used in new expression returns a value. Result will be what the --> + <!-- function returns, rather than a new instance of that function. --> + <warn-constructor-returns-value>false</warn-constructor-returns-value> + + <!-- EventHandler was not added as a listener. --> + <warn-deprecated-event-handler-error>false</warn-deprecated-event-handler-error> + + <!-- Unsupported ActionScript 2.0 function. --> + <warn-deprecated-function-error>true</warn-deprecated-function-error> + + <!-- Unsupported ActionScript 2.0 property. --> + <warn-deprecated-property-error>true</warn-deprecated-property-error> + + <!-- More than one argument by the same name. --> + <warn-duplicate-argument-names>true</warn-duplicate-argument-names> + + <!-- Duplicate variable definition --> + <warn-duplicate-variable-def>true</warn-duplicate-variable-def> + + <!-- ActionScript 3.0 iterates over an object's properties within a "for x in target" statement in random order. --> + <warn-for-var-in-changes>false</warn-for-var-in-changes> + + <!-- Importing a package by the same name as the current class will hide that class identifier in this scope. --> + <warn-import-hides-class>true</warn-import-hides-class> + + <!-- Use of the instanceof operator. --> + <warn-instance-of-changes>true</warn-instance-of-changes> + + <!-- Internal error in compiler. --> + <warn-internal-error>true</warn-internal-error> + + <!-- _level is no longer supported. For more information, see the flash.display package. --> + <warn-level-not-supported>true</warn-level-not-supported> + + <!-- Missing namespace declaration (e.g. variable is not defined to be public, private, etc.). --> + <warn-missing-namespace-decl>true</warn-missing-namespace-decl> + + <!-- Negative value will become a large positive value when assigned to a uint data type. --> + <warn-negative-uint-literal>true</warn-negative-uint-literal> + + <!-- Missing constructor. --> + <warn-no-constructor>false</warn-no-constructor> + + <!-- The super() statement was not called within the constructor. --> + <warn-no-explicit-super-call-in-constructor>false</warn-no-explicit-super-call-in-constructor> + + <!-- Missing type declaration. --> + <warn-no-type-decl>true</warn-no-type-decl> + + <!-- In ActionScript 3.0, white space is ignored and '' returns 0. Number() returns --> + <!-- NaN in ActionScript 2.0 when the parameter is '' or contains white space. --> + <warn-number-from-string-changes>false</warn-number-from-string-changes> + + <!-- Change in scoping for the this keyword. Class methods extracted from an --> + <!-- instance of a class will always resolve this back to that instance. In --> + <!-- ActionScript 2.0 this is looked up dynamically based on where the method --> + <!-- is invoked from. --> + <warn-scoping-change-in-this>false</warn-scoping-change-in-this> + + <!-- Inefficient use of += on a TextField.--> + <warn-slow-text-field-addition>true</warn-slow-text-field-addition> + + <!-- Possible missing parentheses. --> + <warn-unlikely-function-value>true</warn-unlikely-function-value> + + <!-- Possible usage of the ActionScript 2.0 XML class. --> + <warn-xml-class-has-changed>false</warn-xml-class-has-changed> + +#foreach($define in $defines) <define> + <name>$define.name</name> + <value>$define.value</value> + </define> +#end + + </compiler> + +#if($includeSources) + <include-sources> +#foreach($sourcePath in $sourcePaths) <path-element>$sourcePath</path-element> +#end + </include-sources> +#end + +#if($includeClasses) + <include-classes> +#foreach($includeClass in $includeClasses) <class>$includeClass</class> +#end + </include-classes> +#end + + <!-- compute-digest: writes a digest to the catalog.xml of a library. Use this when the library will be used as a + cross-domain rsl.--> + <!-- compute-digest usage: + <compute-digest>boolean</compute-digest> + --> + + <!-- remove-unused-rsls: remove RSLs that are not being used by the application--> + <remove-unused-rsls>true</remove-unused-rsls> + + <!-- static-link-runtime-shared-libraries: statically link the libraries specified by the -runtime-shared-libraries-path option.--> + <static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries> + + <!-- target-player: specifies the version of the player the application is targeting. + Features requiring a later version will not be compiled into the application. + The minimum value supported is "9.0.0".--> + <target-player>${targetPlayer}</target-player> + + <!-- Enables SWFs to access the network. --> + <use-network>true</use-network> + + <!-- Metadata added to SWFs via the SWF Metadata tag. --> + <metadata> + <title>Apache FlexJS Application</title> + <description>http://flex.apache.org/</description> + <publisher>Apache Software Foundation</publisher> + <creator>unknown</creator> + <language>EN</language> + </metadata> + +</flex-config>
