Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ant 蚂蚁<;mxmlc>;使用AIR sdk时任务失败(compiler.jar不存在)_Ant_Build_Air - Fatal编程技术网

Ant 蚂蚁<;mxmlc>;使用AIR sdk时任务失败(compiler.jar不存在)

Ant 蚂蚁<;mxmlc>;使用AIR sdk时任务失败(compiler.jar不存在),ant,build,air,Ant,Build,Air,我有一个在FlashDevelop中构建的项目。它不是AIR应用程序,但因为我们使用的是Starling,所以我们使用AIRSDK(v14)进行编译。从FlashDevelop运行该项目运行良好。我正在编写一个ANT脚本,最终将在Hudson中使用。运行脚本时出现以下错误: BUILD FAILED C:\project\client\build.xml:50: File does not exist: compiler.jar at com.adobe.flash.compiler.

我有一个在FlashDevelop中构建的项目。它不是AIR应用程序,但因为我们使用的是Starling,所以我们使用AIRSDK(v14)进行编译。从FlashDevelop运行该项目运行良好。我正在编写一个ANT脚本,最终将在Hudson中使用。运行脚本时出现以下错误:

BUILD FAILED
C:\project\client\build.xml:50: File does not exist: compiler.jar

    at com.adobe.flash.compiler.ant.FlexTask.resolveClass(FlexTask.java:404)
       at com.adobe.flash.compiler.ant.FlexTask.executeInProcess(FlexTask.java:
300)
        at com.adobe.flash.compiler.ant.FlexTask.execute(FlexTask.java:260)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
        at org.apache.tools.ant.Task.perform(Task.java:348)
        at org.apache.tools.ant.Target.execute(Target.java:435)
        at org.apache.tools.ant.Target.performTasks(Target.java:456)
        at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
        at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
        at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExe
cutor.java:41)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
        at org.apache.tools.ant.Main.runBuild(Main.java:851)
        at org.apache.tools.ant.Main.startAnt(Main.java:235)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
这是ANT脚本

<project name="Flex Ant Build Script" default="init">


<property environment="env"/>
<property name="FLEX_HOME" value="${env.FLEX_HOME}" />
<property name="AIRSDK_HOME" value="C:/Users/user/AppData/Local/FlashDevelop/Apps/ascsdk/14.0.0" />


<taskdef resource="flexTasks.tasks" classpath="${AIRSDK_HOME}/ant/lib/flexTasks.jar"/> 

<taskdef resource="net/sf/antcontrib/antcontrib.properties">
    <classpath>
        <pathelement location="${env.ANT_HOME}/lib/ant-contrib-0.6.jar" />
    </classpath>
</taskdef>

<target name="init">
    <property name="INPUT_FILE_NAME" value="Main.as"/>
    <property name="OUTPUT_FILE_NAME" value="Main"/>
    <property name="OUTPUT_FILE_EXT" value="swf"/>
    <property name="SRC_DIR" value="${basedir}/src"/>
    <property name="OUTPUT_FOLDER" value="${basedir}/deploy"/>

    <property name="DEBUG" value="false"/>
    <property name="OPTIMIZE" value="true"/>
    <property name="LOCALE" value="en_US"/>
    <property name="STATIC_LINK" value="true"/>
    <property name="STRICT" value="false"/>
    <property name="WARNINGS" value="false"/>
</target>

<target name="clean" depends="init">
    <delete includeemptydirs="true" verbose="true">
        <fileset dir="${OUTPUT_FOLDER}" includes="**/*"/>
    </delete>   
</target>

<target name="compile" depends="init">
    <echo>output = ${OUTPUT_FOLDER}/${OUTPUT_FILE_NAME}.${OUTPUT_FILE_EXT}</echo>
    <echo>${AIRSDK_HOME}</echo>
    <property name="AIR_LIB" value="C:/Users/user/AppData/Local/FlashDevelop/Apps/ascsdk/14.0.0/frameworks/libs/air"/>
    <mxmlc  file="${SRC_DIR}/${INPUT_FILE_NAME}" 
            output="${OUTPUT_FOLDER}/${OUTPUT_FILE_NAME}.${OUTPUT_FILE_EXT}"        
            debug="${DEBUG}"
            optimize="${OPTIMIZE}"
            locale="${LOCALE}"
            static-rsls="${STATIC_LINK}"
            strict="${STRICT}"
            warnings="${WARNINGS}">                 

        <library-path dir="${AIRSDK_HOME}" includes="asc-support.swc" append="true"/>
        <library-path dir="${AIRSDK_HOME}" includes="core.swc" append="true"/>
        <library-path dir="${AIR_LIB}" includes="aircore.swc" append="true"/>
        <library-path dir="${AIR_LIB}" includes="applicationupdater.swc" append="true"/>
        <library-path dir="${AIR_LIB}" includes="applicationupdater_ui.swc" append="true"/>
        <library-path dir="${AIR_LIB}" includes="servicemonitor.swc" append="true"/>


    </mxmlc>
</target>

output=${output\u FOLDER}/${output\u FILE\u NAME}.${output\u FILE\u EXT}
${AIRSDK_HOME}

我已经对Flex和AIR的FlexTasks.jar进行了深入研究,它们有很大的不同(应该是这样的)。我尝试将FlexTasks.jar从每个ant/lib移动到${ant_HOME}/lib,但没有成功(正如我在其他帖子中所读到的)。现在我完全陷入了僵局,因为我是一个相对较新的蚂蚁。任何帮助都将不胜感激

感谢

ant
任务的文档记录不完整,其行为与
mxmlc
命令的CLI版本不同,并且AIRSDK没有提供任务所需的
mxmlc.jar

我已经放弃了,尽管我尝试过几次

通过ANT使用命令行版本。我在下面的代码中使用了您的财产名称



,例如您的
${LOCALE}
${STATIC\u LINK}

Oh和compiler.jar位于AIR sdk下的“lib”文件夹中