ここなど、多くの例を見てきました。ここでは、要素の locale 属性を参照してロケール リソース バンドルをインクルードしています。何らかの理由で、これは私にはうまくいきません。これが私がタスクのために持っているものです:
<compc output="${deploy.dir}/myfrmwrk.swc" locale="en_US">
<source-path path-element="${basedir}/src/main/flex"/>
<include-sources dir="${basedir}/src/main/flex" includes="*" />
<include-libraries file="${basedir}/libs"/>
<compiler.external-library-path dir="${FLEX_HOME}/frameworks/libs/player/9" append="true">
<include name="playerglobal.swc"/>
</compiler.external-library-path>
<compiler.library-path dir="${FLEX_HOME}/frameworks" append="true">
<include name="libs"/>
<include name="locale/${locale}"/>
</compiler.library-path>
<load-config filename="${basedir}/fb3config.xml" />
</compc>
これは、次の形式の一連のエラーで失敗します。
[compc] Error: could not find source for resource bundle ...
この1つの変更でビルドできます:
<include name="locale/en_US"/>
Flex Builder 3 によって生成された構成ファイルは、実際にはこれを「locale/{locale}」としてレンダリングします ($ が欠落していることに注意してください)。私も同じ(失敗した)結果でそれを試しました。
今のところ、ローカリゼーション バンドルをしばらく行う予定がないため、en_US を直接注入しても問題ありませんが、最終的にはこれを機能させる必要があります。また、それが機能するはずの方法で機能させることができないことは私を悩ませます!