我需要建立一个连续的环境,允许建立air应用程序,所以我必须设置一些蚂蚁脚本来编译我的闪存,然后打包它。
我偶然发现了flex任务mxmlc,它是构建.swf的基本工具。
我已经使用这个工具设置了一个基本构建文件,但是我的项目使用.ANE,我不能让它们在我的swf编译时包含。由于许多类都是未知的,所以我最终会出现错误。
这是我的构建文件:
<property
name="AIR_SDK_HOME" value="${basedir}/Flex 4.6.0" />
<property
name="FLEX_HOME" value="${basedir}/Flex 4.6.0" />
<property
name="FLEX_TASKS" value="${FLEX_HOME}/ant/flexTasks.tasks" />
<property
name="ADT" value="${SDK}/bin/adt" />
<property
name="MXMLC" value="${SDK}/bin/amxmlc" />
<taskdef resource="flexTasks.tasks" classpath="flexTasks.jar"/>
<target name="compile">
<mxmlc file="${basedir}/src/Main.as"
output="${basedir}/bin-debug/HR_2012_IPAD.swf"
locale="en_US"
static-rsls="true"
accessible="true"
configname="airmobile"
debug="true"
failonerror="true"
fork="true"
maxmemory="512m">
<source-path path-element="${FLEX_HOME}/frameworks"/>
<source-path path-element="${basedir}/src"/>
<source-path path-element="${basedir}/gestouch"/>
<compiler.library-path dir="${basedir}/lib" />
<compiler.external-library-path dir="${basedir}" append="true">
<include name="lib/*" />
</compiler.external-library-path>
<library-path dir="${basedir}/lib" includes="*.swc,*.ane" append="true"/>
<library-path dir="${SDK}/frameworks/locale/en_US" includes="*.swc" append="true"/>
</mxmlc>
</target>
如果有人已经成功地使用mxmlc成功地包含了.ane,我希望听到一个解决方案。
干杯伙计们!
发布于 2013-06-14 10:27:15
向-external-library-path添加路径以及.ane文件名对我有用。
编辑:在您的目标中,您可能只需更改它以显式查看.ane文件:
<compiler.external-library-path dir="${basedir}" append="true">
<include name="lib/yourExtension.ane" />
</compiler.external-library-path>
我就是这样使用它的(${compiler.arguments}是可选的--您可以使用它将信息传递给编译器,例如定义条件编译的标签,如: CONFIG::debug_trace,true):
<target name="build" depends="set build type, copy extension packages, copy files for building">
<exec executable="${MXMLC}" failonerror="true">
<arg line="
${compiler.arguments}
+configname=airmobile
-debug=${build.debug}
-output ${app.builddir}/${app.name}.swf
${app.main.file}
-source-path+=${app.sourcedir}
-external-library-path+=${ext.extensiondir}/${ext.file}
-library-path+=${app.libs}
-incremental=true
"/>
</exec>
</target>
这是我为我们的书“简单的本机扩展”编写的连续环境构建脚本的摘录(目标是完成ANEs的构建,该应用程序使用ANEs,只需单击一下就可以在设备上安装该应用程序)。
https://stackoverflow.com/questions/17105479
复制相似问题