Flash Flex 4+;Apache Ant,无法加载ActionScript库
我一直在搜索google、ApacheDocs*和FlashPunk论坛,寻找答案:我无法让Ant/Flex找到并编译一个*.AS格式的库文件夹 这是我的build.xmlFlash Flex 4+;Apache Ant,无法加载ActionScript库,flash,actionscript-3,apache,ant,flex4,Flash,Actionscript 3,Apache,Ant,Flex4,我一直在搜索google、ApacheDocs*和FlashPunk论坛,寻找答案:我无法让Ant/Flex找到并编译一个*.AS格式的库文件夹 这是我的build.xml <project> <!-- Flex SDK Properties --> <property name="FLEX_HOME" value="/opt/flex"/> <property name="MXMLC.JAR" value="${FLEX_HOME}/lib/mxmlc
<project>
<!-- Flex SDK Properties -->
<property name="FLEX_HOME" value="/opt/flex"/>
<property name="MXMLC.JAR" value="${FLEX_HOME}/lib/mxmlc.jar"/>
<!-- Project Properties -->
<property name="PROJECT_PATH"
value="/media/Lexar_32G/Dev/ActionScript/FlashPunk/FP_Tut_Vid_ep01"/>
<property name="SOURCE_PATH" value="${PROJECT_PATH}"/>
<property name="OUTPUT_PATH" value="${PROJECT_PATH}"/>
<property name="FLASHPUNK_PATH" value="/media/Lexar_32G/Dev/ActionScript/FlashPunk"/>
<!-- Fetch the JAR full of Flex tasks if it is not already in the source directory -->
<copy file="${FLEX_HOME}/ant/lib/flexTasks.jar" todir="${SOURCE_PATH}"/>
<!-- Add flextasks to the project -->
<taskdef resource="flexTasks.tasks" classpath="${SOURCE_PATH}/flexTasks.jar"></taskdef>
<!-- Release build Flash Player 10.1 -->
<target name="build">
<!-- Build the FlashPunk library -->
<echo message="building swc..." />
<compc output="FlashPunk.swc" keep-generated-actionscript="false"
incremental="false" optimize="false" debug="true" use-network="false">
<include-sources dir="${FLASHPUNK_PATH}/net"
includes="**/* flashpunk/utils/* flashpunk/masks/*"
excludes="**/*.TTF **/*.png"/>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>
</compc>
<echo message="building swf..." />
<mxmlc
file="${SOURCE_PATH}/epOne.as"
output="${OUTPUT_PATH}/epOne.swf"
debug="false"
incremental="false"
strict="true"
accessible="false"
link-report="link_report.xml"
static-link-runtime-shared-libraries="true">
<optimize>true</optimize>
</mxmlc>
</target>
真的
结果导致许多类型的错误“Definition net.flashpunk.masks:Grid找不到”,即使当我打开目录时,我可以在那里看到*.AS文件
抱歉,如果这是非常基本的。我正在拼凑文档和教程中关于Ant的知识
*我决定使用Ant,因为FlashDevelopforWindows和Eclipse forLinux都不适合我。这(基本上)是固定的。我没有达到只拥有一个未编译的FlashPunk库副本的目标,但通过将整个库复制到源路径,我至少能够让SWF编译。幸好它没那么大
Apache Ant命令如下所示:
<copy todir="${SOURCE_PATH}/net">
<fileset dir="/media/Lexar_32G/Dev/ActionScript/FlashPunk/net"/>
</copy>
<!--
build.xml
SquareCrow, June 2011
Apache Ant makefile
-->
<project>
<!-- Flex SDK Properties -->
<property name="FLEX_HOME" value="/opt/flex"/>
<property name="MXMLC.JAR" value="${FLEX_HOME}/lib/mxmlc.jar"/>
<!-- Project Properties -->
<property name="PROJECT_PATH" value="/media/Lexar_32G/Dev/ActionScript/FlashPunk/FP_Tut_Vid_ep01"/>
<property name="SOURCE_PATH" value="${PROJECT_PATH}"/>
<property name="OUTPUT_PATH" value="${PROJECT_PATH}"/>
<property name="FLASHPUNK_PATH" value="/media/Lexar_32G/Dev/ActionScript/FlashPunk"/>
<!-- Fetch the JAR full of Flex tasks if it is not already in the source directory -->
<copy file="${FLEX_HOME}/ant/lib/flexTasks.jar" todir="${SOURCE_PATH}"/>
<!-- Add flextasks to the project -->
<taskdef resource="flexTasks.tasks" classpath="${SOURCE_PATH}/flexTasks.jar"></taskdef>
<!-- Fetch the FlashPunk files and put them in their own folder -->
<copy todir="${SOURCE_PATH}/net">
<fileset dir="/media/Lexar_32G/Dev/ActionScript/FlashPunk/net"/>
</copy>
<!-- Release build Flash Player 10.1 -->
<target name="build">
<echo message="building swf..." />
<mxmlc
file="${SOURCE_PATH}/epOne.as"
output="${OUTPUT_PATH}/epOne.swf"
debug="false"
incremental="false"
strict="true"
accessible="false"
link-report="link_report.xml"
static-link-runtime-shared-libraries="true">
<optimize>true</optimize>
</mxmlc>
</target>
</project>
不需要额外的命令来让Flex为我设置名称空间。此外,在编译最终的SWF之前,我停止了将库编译为SWC的尝试。因此,生成的build.xml如下所示:
<copy todir="${SOURCE_PATH}/net">
<fileset dir="/media/Lexar_32G/Dev/ActionScript/FlashPunk/net"/>
</copy>
<!--
build.xml
SquareCrow, June 2011
Apache Ant makefile
-->
<project>
<!-- Flex SDK Properties -->
<property name="FLEX_HOME" value="/opt/flex"/>
<property name="MXMLC.JAR" value="${FLEX_HOME}/lib/mxmlc.jar"/>
<!-- Project Properties -->
<property name="PROJECT_PATH" value="/media/Lexar_32G/Dev/ActionScript/FlashPunk/FP_Tut_Vid_ep01"/>
<property name="SOURCE_PATH" value="${PROJECT_PATH}"/>
<property name="OUTPUT_PATH" value="${PROJECT_PATH}"/>
<property name="FLASHPUNK_PATH" value="/media/Lexar_32G/Dev/ActionScript/FlashPunk"/>
<!-- Fetch the JAR full of Flex tasks if it is not already in the source directory -->
<copy file="${FLEX_HOME}/ant/lib/flexTasks.jar" todir="${SOURCE_PATH}"/>
<!-- Add flextasks to the project -->
<taskdef resource="flexTasks.tasks" classpath="${SOURCE_PATH}/flexTasks.jar"></taskdef>
<!-- Fetch the FlashPunk files and put them in their own folder -->
<copy todir="${SOURCE_PATH}/net">
<fileset dir="/media/Lexar_32G/Dev/ActionScript/FlashPunk/net"/>
</copy>
<!-- Release build Flash Player 10.1 -->
<target name="build">
<echo message="building swf..." />
<mxmlc
file="${SOURCE_PATH}/epOne.as"
output="${OUTPUT_PATH}/epOne.swf"
debug="false"
incremental="false"
strict="true"
accessible="false"
link-report="link_report.xml"
static-link-runtime-shared-libraries="true">
<optimize>true</optimize>
</mxmlc>
</target>
</project>
真的
简单,不是吗