1.5節. 在Flex Builder外部編譯Flex項目
1.5.1. 問題
我不想在Flex Builder裡進行編譯項目
1.5.2. 解決辦法
使用終端或命令列視窗調用MXML編譯器
1.5.3. 討論
雖然Flex Builder是一個功能強大的Flex開發工具,但是這不是建立Flex程式所必需的,你仍然可以用Flex編譯器(mxmlc)來編譯Flex代碼,Flex編譯器是免費的,在Adobe網站上可免費下載。在Windows下的命令列或Mac OS X的終端裡調用MXML編譯器,以及待編譯的檔案作為參數,例如:
home:base$ . /Users/base/Flex SDK 3/bin/mxmlc ~/Documents/FlexTest/FlexTest.mxml
上面通過目錄中的編譯器編譯MXML檔案,在終端或命令列視窗會顯示可能出現的編譯警告和錯誤。如要添加MXML編譯器選項,可在調用編譯器命令時追加參數,例如:
home:base$ ./mxmlc ~/Documents/FlexTest/FlexTest.mxml -output=/Users/base/test/genera
ted/Index.swf -library-path+=/Users/lib/MyLib.swc
產生的SWF檔案被重新命名為Index.swf,被儲存在/Users/base/test/generated/,編譯時間引入SWC 庫/Users/lib/MyLib.swc 。
要調用MXML編譯器,可直接在命令列下輸入命令而不需要指定SDK全路徑(例如C:/flex_sdk_3),當然在之前你需要添加bin目錄到系統的Path的環境變數。
在 Windows 上:
1. 開啟控制台的系統選項
2. 選擇進階標籤.
3. 點擊環境變數
4. 在系統變數中,找到Path,雙擊它。
5. 加入SDK的bin目錄路徑 (Figure 1-11).
Figure 1-11. 設定Flex SDK 3 Path 變數
6. 設定好後,開啟命令列,定位到項目目錄,輸入下面的命令:
C:/Documents/FlexTest> mxmlc FlexTest.mxml
這樣會在C:/Documents/FlexTest目錄下產生FlexTest.swf檔案,因為已經在先前設定好了SDK路徑,這裡調用編譯器時就不用輸入全路徑了。
7. 如果在第6步產生如下錯誤資訊:
Error: could not find JVM
這時你需要手動指定Java Runtime Environment (JRE)安裝路徑,開啟Flex 3 SDK的bin目錄,用文字編輯器開啟jvm.config檔案,找到java.home變數(沒有則添加之)。設定你的JRE安裝路徑:
java.home=C:/Java/jre
在 Mac OS X 或 Linux:
開啟.bash_profile檔案(如果你是使用Bash)編輯path變數,如下:
PATH="${PATH}:~/flex3SDK/bin"
export PATH
.bash_profile檔案儲存在你的home目錄下(可通過cd ~目錄查看),如果你使用的是tsch,則需要編輯 .profile檔案:
PATH="${PATH}:~/flex3SDK/bin"
export PATH