2011-07-14 14 views
1

フレックスコンパイラ(mxmlc)を使用すると、コンパイラのconfig xmlファイルas referenced in the documentationのトークン置換を使用できます。あなたがコマンドライン上の置換のための独自のトークンを指定することができることは明らかであるが、アドビシステムズ社が所定の位置に入れていることを利用できるいくつかのデフォルト/魔法のトークンもあるリンクドキュメントからmxmlc設定ファイルで使用できるトークンは、デフォルトではどれですか?

...

例えば、以下のスニペットは、フレームワークRSLの調達をいじる方法についてan Adobe exampleから減少している:

 
<runtime-shared-library-path> 
    <path-element>libs/framework.swc</path-element> 
    <rsl-url>${hosted.rsl.url}/flex/${build.number}/framework_${build.number}.swz</rsl-url> 
    <policy-file-url>${hosted.rsl.url}/crossdomain.xml</policy-file-url> 
</runtime-shared-library-path> 

私が使用している2つのトークン、すなわちhosted.rsl.urlbuild.numberを強調しています。これらはコマンドライン上で指定することなく「魔法のように」動作します。

${flexlib}トークンの存在を漠然と示すanother exampleです。 トークンのリストは、私が見つけることができないところに文書化されていますか?いいえ、私は見つけられませんでした。もしそうでなければ、利用可能なトークンが何であるかを知っていますので、このSOの質問はドキュメントになりますか?


注:私はbuild.numberを参照しているので、私もまたbuild.numberはかなりのAdobeのように動作するようには思えないことに注意してくださいかもしれない私にとって、それは単に私のビルド番号ではなく、全体を与えるので、それがないと考えているようです文字列。 ie:フレックス4.5.0.20967の場合、${build.number}は私にはほとんど役に立たない20967を与えます)。私は誰かがこれらのトークンの実装の変更について不平を言っていたWebリンクを持っていましたが、私はもはやそれを見つけることができません。

+0

私の解釈は、トークンをコンパイラの引数として定義して、configファイルにアクセスする必要があることです。 – JeffryHouser

+0

@ www.Flextras.com - はい、それはまさにドキュメントが言うことです。ただし、コンパイラの引数として明示的に指定する必要がなく、利用可能なデフォルト/マジックのものがいくつかあります。私はそれらの後にいる。申し訳ありませんが私は十分に明確でない場合。 – Russ

+0

@ www.Flextras.com - 明確にするために質問を編集しました – Russ

答えて

2

あなたはビルドファイルでそれらを見つけることができます - ビルドのためにあなたのsdkディレクトリとそれを持っていれば(そしてオープンソースなので、あなたはadobe http://opensource.adobe.com/wiki/display/flexsdk/Get+Source+Codeからあなたの無料コピーを得ることができます) xmlファイル。

実際にどこに定義されているかがわかります。フレームワークのさまざまな部分について異なるビルドを実行する必要があります。たとえば、最初の数行に次のように見ることができます:

(あなたが他の人の間で好奇心だったようbuild.numberが指定されている注意してください)

<project name="sdk" default="main" basedir="."> 

<property name="FLEX_HOME" location="${basedir}"/> 

    <!-- Required for OSX 10.6/Snow Leopard Performance --> 
<condition property="local.d32" value="-d32" > 
    <and> 
     <equals arg1="${sun.arch.data.model}" arg2="64"/> 
     <equals arg1="${os.arch}" arg2="x86_64"/> 
      <os family="mac"/> 
    </and> 
</condition> 

<property file="${FLEX_HOME}/local.properties"/> 
<property file="${FLEX_HOME}/build.properties"/> 
<property environment="env"/> 
<property name="debug" value="true"/> 
<property name="strict" value="true"/> 
<property name="javac.src" value="1.5"/> 
<property name="build.number" value="0"/> 
<property name="target.player" value="10"/> 

ハッピー狩り! (そしてあなたも、あなた自身を追加することができます!覚えておいてください)

を:)

0

これは、比較的古い質問ですが、私はちょうど最近思ってきました。トークンはコンパイラのConfigurationBufferに蓄積されます。 Mxmlcは、flexlibframeworkconfignamebuild.number、およびflex.で始まるシステムプロパティを入力します。一方、CommandLineConfiguratorは、ユーザートークンを解析します。しかし、hosted.rsl.urlについてはわからない。私はがDefaultsConfiguratorのデフォルトのような追加の変数を公開しているが、それを起動するのに十分なものではなかったと思う。私はflexlibを歴史的に使用しましたが、whereが現在のディレクトリにデフォルト設定されています。

関連する問題