2

コンパイル時定数を使用する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>   

「エラー:構成値の初期化子はコンパイル時定数でなければなりません」というメッセージが表示されます。

-define + = CONFIGを使用してみましたが、同じ応答が返されます。

コンパイル時定数とantの経験がある人は何か提案がありますか?

4

2 に答える 2

2

私はそれを次のように使用しています:

<define name="CONFIG::LOGGING" value="false" />

しかし、<compc>それが実行で機能するかどうかはわかりません...しかし、あなたは試すことができます;)

于 2012-06-28T07:51:55.520 に答える
1

各行で属性と交互のキー/値を使用argしています。valueこれがベストプラクティスかどうかはわかりませんが(私にはかなり見苦しいようです)、数年前にAntスクリプトを設定したときに、さまざまなオプションを試したことを覚えています。

「壊れていない、直さない」という原則のために、私はそれをそのままにして、2年以上の間それを非常に幸せに使用しています。

サンプルを使用すると、次のようになります。

<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> 
于 2012-06-29T17:33:22.723 に答える