2012-09-07 70 views
3

我做了以下內容:Flex的條件編譯錯誤

CONFIG::TEST{ 
    rootURL = "myTestURL"; 
} 

CONFIG::PROD{ 
    rootURL = "myProdURL"; 
} 

在編譯器參數我有這樣的:

-locale en_US -define+=CONFIG::AIR,true -define+=CONFIG::WEB,false 
-show-unused-type-selector-warnings=false 
-define+=CONFIG::PROD,false -define+=CONFIG::TEST,true 

但我發現了他們的錯誤都:

Access of undefined property PROD. 
Access of undefined property TEST. 

奇怪的是,這段代碼適用於我的Windows機器,但不適用於我的Mac。我已經嘗試了各種各樣的事情 - 清理代碼,清理項目,重新安裝Flash Builder。我也嘗試改變參數的順序,把最後兩個放在選擇器警告的前面。這也沒有幫助。

有沒有人見過這個?

+0

你有沒有在那裏換行(當你在項目屬性中輸入他們)?也許這是搞砸從贏 - > MAC,但我從來沒有見過它發生。您可以檢查您的'.actionScriptProperties'文件以查看它包含的內容和/或替換帶空格的換行符。 –

+0

不,我在這裏添加了換行符,僅用於格式化。但謝謝你的建議。 – David

+0

你的帖子中有大括號 - 這只是一個錯字嗎? –

回答

0

嘗試設置第一-define=CONFIG::AIR,true沒有+=或使用-load-config+=configs.xml

<?xml version="1.0" encoding="utf-8"?> 
<flex-config> 
    <compiler> 
    <define append="true"> 
     <name>CONFIG::AIR</name> 
     <value>true</value> 
    </define> 
    ... 
    </compiler> 
</flex-config> 
+0

謝謝,嘗試過但沒有運氣。 – David