Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.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
Actionscript 3 AS3编译时常量在ant脚本中设置时出错_Actionscript 3_Apache Flex_Ant - Fatal编程技术网

Actionscript 3 AS3编译时常量在ant脚本中设置时出错

Actionscript 3 AS3编译时常量在ant脚本中设置时出错,actionscript-3,apache-flex,ant,Actionscript 3,Apache Flex,Ant,我有一个使用编译时常量的AS3项目。这在FDT中运行良好,并添加了编译器参数,如: -define=CONFIG::buildver,"0.1" 但在使用ant脚本进行构建时尝试复制此内容时: <project name="ProjectName" default="compileMain" basedir="."> <property file="build.properties" /> <target name="compileMain">

我有一个使用编译时常量的AS3项目。这在FDT中运行良好,并添加了编译器参数,如:

-define=CONFIG::buildver,"0.1"
但在使用ant脚本进行构建时尝试复制此内容时:

<project name="ProjectName" default="compileMain" basedir=".">
<property file="build.properties" />    
<target name="compileMain">
    <exec executable="${mxmlc}">

        <arg line='-define=CONFIG::testvar,"0.1"' />
        <arg line="-source-path '${classesdir}'" />
        <arg line="-library-path '${flex3libsdir}'" />
        <arg line="-output '${bindir}/TestSwf.swf'" />
        <arg line="-file-specs '${classesdir}/Test_Main.as'" />

    </exec>
</target>   

I get“错误:配置值的初始值设定项必须是编译时常量。”

我尝试使用-define+=CONFIG,但得到了相同的响应


有编译时常数和ant经验的人有什么建议吗?

我这样使用它:

<define name="CONFIG::LOGGING" value="false" />
<project name="ProjectName" default="compileMain" basedir=".">
<property file="build.properties" />    
<target name="compileMain">
    <exec executable="${mxmlc}">

    <arg value="-define=CONFIG::testvar,0.1"/>
    <arg value="-source-path"/>
    <arg value="${classesdir}"/>
    <arg value="-library-path"/>
    <arg value="${flex3libsdir}"/>
    <arg value="-output"/>
    <arg value="${bindir}/TestSwf.swf"/>
    <arg valye="-file-specs"/>
    <arg value="${classesdir}/Test_Main.as"/>

    </exec>
</target> 


但是在
中,所以不确定它是否在exec中工作。。。但是你可以试试;)

我正在使用
arg
value
属性,并在每行交替使用键/值。不确定这是否是最佳实践(对我来说,这似乎相当粗制滥造),但我确实记得几年前我在设置Ant脚本时尝试了一系列不同的选项,这就是我一直坚持的地方

由于“不坏,不修”的原则,我已经离开了它,并一直在使用它相当愉快的两年多了

使用您的示例,它看起来像这样:

<define name="CONFIG::LOGGING" value="false" />
<project name="ProjectName" default="compileMain" basedir=".">
<property file="build.properties" />    
<target name="compileMain">
    <exec executable="${mxmlc}">

    <arg value="-define=CONFIG::testvar,0.1"/>
    <arg value="-source-path"/>
    <arg value="${classesdir}"/>
    <arg value="-library-path"/>
    <arg value="${flex3libsdir}"/>
    <arg value="-output"/>
    <arg value="${bindir}/TestSwf.swf"/>
    <arg valye="-file-specs"/>
    <arg value="${classesdir}/Test_Main.as"/>

    </exec>
</target> 


相同的格式在exec中不起作用,我尝试在comp中添加,但找不到可以使用的tage。然而,你的格式确实让我走上了一条行之有效的道路。谢谢谢谢,看起来很管用。不知道我自己怎么没试过。在看到你发表文章之前,我使用“-define+=CONFIG::buildstatus”“ALPHA\”,让它工作起来。工作了,但没有你的干净。再次感谢