プロプログラマ -Flex,Air,C#,Oracle,PHP-

プログラマーを職業としてます。 Flex,Air,C#,Oracle,PHPの言語ノウハウを中心に情報発信していきます

【Flex】FlashBuilder4.7+FlexSDK4.10の組み合わせでバグ

FlashBuilder4.7でFlexSDK4.10を使用してSparkのプロジェクトを作成した際、生成されるソースに一部問題があるようです。

https://cwiki.apache.org/confluence/display/FLEX/Adobe+Flash+Builder+%27New+Project%27+Bug

実際やってみました。
生成されたmxmlファイルの中身は以下のようになりました。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                  xmlns:s="library://ns.adobe.com/flex/spark"
                  xmlns:mx="library://ns.adobe.com/flex/mx" layout="absolute" minWidth="955" minHeight="600">
    
</s:Application>

このコードを実行しようとすると、「 layout=”absolute”」でエラーとなります。
この書き方はFlexの3.x時のmx用の書き方でSparkでは使えませんね。

対応方法としては、余分なこの記述を削除してしまえばいいのですが、
パッチも提供されていますので、それを当てておいたほうが良いでしょう。

以下のページにその手順が書いてあります。
http://helpx.adobe.com/flash-builder/kb/flex-new-project-issue–.html

codemodel.jarというファイルを置き換えればいいようで、
FlashBuilderインストール先配下の/eclipse/plugins/com.adobe.flexbuilder.codemodel_4.7.0.349722フォルダ内にあるcodemodel.jarを、上記参照ページからダウンロードできるcodemodel.jarで上書きするだけです。

入れ替えたあと、FlashBuilderを再起動すれば適用完了です。
適用後に再度作成してみました。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                  xmlns:s="library://ns.adobe.com/flex/spark"
                  xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
     <fx:Declarations>
          <!-- 非ビジュアルエレメント (サービス、値オブジェクトなど) をここに配置 -->
     </fx:Declarations>
</s:Application>

absoluteの記述が消えたのと、Declarationsの記述が追加されました。

FlexSDKは以前からバージョンアップする度にしょうもないバグが付いてきます。
こっちは治ったけどそっちがおかしくなった・・・みたいな。。

気づかれてないだけで、他にもこういったことはありえますので、作っていて「これ前と動きが違うなぁ」って事があった場合は、自分が作ったソースを疑うのと同時に、FlexSDK自身のバグではないかも疑ってみましょう。
以前のSDKに戻してみると分かります。

AdobeからApacheに渡って変わるかと思いましたが、相変わらずですね。

 

== ランキングに参加しています。ぜひクリックお願いします ==

プログラム ブログランキングへ
にほんブログ村 IT技術ブログへ
にほんブログ村

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です