2011-06-21 8 views
3

私はFlex 4アプリケーションをビルドしています(FlexBuilderではなくflexmojosを使用しています)。 MX使用して、次のように私は、テストアプリケーションを作成する場合:アプリケーションを、私は私が期待するようボタンを参照してください。フレックス4ブランク

<mx:Application 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:mx="http://www.adobe.com/2006/mxml"> 

    <s:Button 
     label="Button"/> 

</mx:Application> 

をしかし、私はSを使用する場合:アプリケーションは、私が見るすべてが空白(白)の画面です:

<s:Application 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:mx="http://www.adobe.com/2006/mxml"> 

    <s:Button 
     label="Button"/> 

</s:Application> 

ちなみに私は現在、HTMLラッパーを使用していません。ブラウザに直接swfをロードしています。ここで

<project 
    xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.aaa.bbb</groupId> 
    <artifactId>app</artifactId> 
    <packaging>war</packaging> 
    <version>2.0-SNAPSHOT-1</version> 
    <name>app</name> 
    <url>http://maven.apache.org</url> 
    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 

    <build> 
     <sourceDirectory>src/main/flex</sourceDirectory> 
     <testSourceDirectory>src/test/flex</testSourceDirectory> 
     <plugins> 
      <plugin> 
       <groupId>org.sonatype.flexmojos</groupId> 
       <artifactId>flexmojos-maven-plugin</artifactId> 
       <version>3.9</version> 
       <dependencies> 
        <dependency> 
         <groupId>com.adobe.flex</groupId> 
         <artifactId>compiler</artifactId> 
         <version>4.5.0.20967</version> 
         <type>pom</type> 
        </dependency> 
       </dependencies> 
       <extensions>true</extensions> 
       <configuration> 
        <policyFileUrls> 
         <url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</url> 
        </policyFileUrls> 
        <rslUrls> 
         <url>http://fpdownload.adobe.com/pub/{extension}/flex/4.5.0.20967/{artifactId}_{version}.{extension}</url> 
        </rslUrls> 
       </configuration> 
       <executions> 
        <execution> 
         <id>flex-compile</id> 
         <phase>compile</phase> 
         <goals> 
          <goal>compile-swf</goal> 
         </goals> 
         <configuration> 
          <output>src/main/webapp/Main.swf</output> 
         </configuration>       
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 

    <dependencies> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>textLayout</artifactId> 
      <version>4.5.0.20967</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>framework</artifactId> 
      <version>4.5.0.20967</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>spark</artifactId> 
      <version>4.5.0.20967</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>sparkskins</artifactId> 
      <version>4.5.0.20967</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>rpc</artifactId> 
      <version>4.5.0.20967</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>datavisualization</artifactId> 
      <version>4.5.0.17855</version> 
      <type>swc</type> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.adobe.flex.framework</groupId> 
      <artifactId>flex-framework</artifactId> 
      <version>4.5.0.20967</version> 
      <type>pom</type> 
     </dependency> 
    </dependencies> 

</project> 

誰もが私が間違っているのか知っている...私のポンポンのですか? おかげ

UPDATE:

私は今.swfファイルと同じ場所に保存されている.swzファイルとしてすべてのRLSSを持っている、と私は次のように設定RSLのURLを持っている:

      <configuration> 
        <policyFileUrls> 
         <url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</url> 
        </policyFileUrls> 
        <rslUrls> 
         <url>{artifactId}_${flex.sdk.version}.{extension}</url> 
        <url>http://fpdownload.adobe.com/pub/{extension}/flex/${flex.sdk.version}/{artifactId}_${flex.sdk.version}.{extension}</url> 
        </rslUrls> 
       </configuration> 

それでもアプリは空白です。 FireBugを使用すると、私が見ることができるRSLに対する要求はないようであり、これに関するエラーメッセージもありません。 RSLの読み込みは試行されていないようです。

これは奇妙です!

+0

エラーが発生しているはずです。あなたはフラッシュプレーヤーのデバッグを実行していますか? –

+0

この問題について進展がありましたか?私は同じ問題に直面しています。flex 4.5.1 release + flexmojos 3.8(これは新しいflex-compiler-oem artifactで再コンパイルしなければなりません) –

答えて

0

問題は、デフォルトでロードする必要があるRSLにあると思いますが、それらのRSLは正しく配置されていません。必要なRSLをすべてリストし、その範囲をmergedに変更してください。私はthisthisリンクが便利だと思います。

+0

私はあなたがRSLについて正しいと思いますが、働く2番目のリンクは rsl またはキャッシングを使用していますが、いずれもMavenで受け入れられていません。[提供、コンパイル、ランタイム、テスト、システム]のいずれかである必要がありますが、 'rsl'同じことが "合併"になります。私は何か間違っているのですか? – chris

+1

あなたのPOMを投稿する方がずっと良いでしょう。 – Constantiner

+0

あなたは正しいと思います。 – chris

0

どちらの場合も、幅を100、高さを25に設定してみてください。

+0

ありがとう、しかしそれは動作しません – chris

0

これは正確な回答ではありませんが、実際の回答を見つけるのに役立つトラブルシューティングの詳細情報です。私はIntellijIdea 10でmakeを使ってswfを構築するのと同じ結果を得ています。私は4.5 SDKを使用しています。

誰かが、私はAdobeとのインキュベーターにあるフラッシュプレーヤー11が必要であると示唆しました。フラッシュプレーヤー11で同じ結果が得られます(スパークを使用している場合は白い画面、mxを使用する場合は問題ありません)。

私は他のプロジェクトでFlexMojosを使用していますが、これについてはFlex 4.5で概念実証テストを行っていますが、物事が安定するまで別の変数をビルド方程式に導入したくありません。

この追加情報を参考にすれば、問題の原因を突き止めるのに役立ちます。

5

あなたはmojos < 4上であなたflexmojos-のmaven-pluginのの、コンフィギュレーション

<configuration> 
    <configurationReport>true</configurationReport> 
    <sourceFile>Main.mxml</sourceFile> 
    <configFiles><!-- Fix for Mojos's < 4 --> 
     <configFile>flex-config-swf-version-11.xml</configFile> 
    </configFiles> 
... 

にこれを追加してから、このファイル

<?xml version="1.0"?> 
<flex-config> 
     <swf-version>11</swf-version> 
</flex-config> 

を作成している場合は、次の場合http://groups.google.com/group/flex-mojos/browse_thread/thread/143f69219fcddc16#

あなたは4以上あります。あなたの設定にこれを追加できます。

<configuration> 
    <configurationReport>true</configurationReport> 
    <sourceFile>Main.mxml</sourceFile> 
    <swfVersion>11</swfVersion> 
... 

から:http://groups.google.com/group/flex-mojos/browse_thread/thread/9ff3ea2e0e0461a4

1

ANTを使用してのIntelliJを構築するとき、私はランダムに同じ問題を抱えています。 10.3ではなく、ターゲットFlash Playerのバージョンを10.2に変更することで問題は解決されました。

0
  1. それはRSLとして使用されるためには、まず、uがキャッシュ <scope>caching</scope>としてスコープを提供する必要があります。あなたが得る警告はちょうどいいですし、flex-mojosとmavenの問題です。私はのポストでそれを見ているのを覚えています。 plsはurselfを検索します。

  2. 他の フレームワークrslsとは常に異なる番号が付いてくるので、テキストレイアウトバージョンを確認してください。つまり、テキストレイアウトの場合、別個のエントリが必要です。 this

      <rslUrls> 
           <url>{artifactId}_${flex.sdk.version}.{extension}</url> 
           <url>{artifactId}_${flex.textlayout.version}.{extension}</url><url>http://fpdownload.adobe.com/pub/{extension}/flex/${flex.sdk.version}/{artifactId}_${flex.sdk.version}.{extension}</url> 
    
  3. 参照してくださいrslurlsのエントリ数はhereをtag.see policyurlsのエントリ数と一致する必要があります。 policyFileUrlsはポリシーファイルURLの配列です。 rslUrls配列の各エントリは、この配列に対応するエントリを持たなければなりません。

  4. firefoxのfirebugエクステンションを使用し、ネットコンソールでrslsのダウンロードを確認してください。また、net-exportプラグインを使用して、netconsoleログを保存して貼り付けることもできます。

上記のチェックを行い、結果を知るようにコードを修正してください。

1

私はFlex Mojos 4.0とFlex 4.5で同じ問題に直面していました。問題は、Flex Mojos 4.1-BETAにアップグレードしたときに解決されました。

関連する問題