2009-08-14 128 views
2

以下代碼在flex builder 3中編譯得很好,但在使用命令行和flex sdk 3.3編譯時會引發錯誤。當使用flex builder和flex sdk編譯項目時的差異

<?xml version="1.0" encoding="utf-8"?> 
<ww:TestApplication 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:ww="*" 
    layout="absolute" 
    backgroundColor="#FFFFFF" 
    > 
    <mx:Label x="10" y="10" text="simple test"/> 
</ww:TestApplication> 

錯誤消息是:無法找到組件類「TestApplication」的指定基類「TestApplication」。

這個問題只發生在我爲我的自定義類使用默認包的時候。如果我使用

xmlns:ww="somepackage.*" 

並相應地更改我的匹配AS類,然後它使用sdk編譯得很好。編譯時我錯過了一個參數嗎?使用flex builder和flex sdk編譯項目時是否存在差異?如果是這樣,哪些?

回答

0

路徑必須使用mxmlc或compc顯式定義。這裏是標誌的解釋:

源路徑使用,如果它不是在默認定義路徑來源:

mxmlc -source-path path1 path2 path3 c:/myFiles/app.mxml 

庫路徑使用以限定的路徑的庫:

mxmlc -library-path [AIR SDK]/frameworks/libs/air/airframework.swc,^[AIR SDK]/frameworks/libs/air/airframework.swc,^-library-path [Flex SDK]/frameworks/libs/framework.swc^-- myApp.mxml 

文件規格用於定義MXML文件:

mxmlc --strict=true --file-specs MyFirst.mxml 

運行時共享的庫被用於定義RSL路徑:

mxmlc -external-library-path+=../lib/myLib.swc -runtime-shared-libraries=myrsl.swf -- myApp.mxml 

參考