25.2.使用組件編譯器
2024-04-27 13:52:37
供稿:網友
25.2.1. 問題
我想把一個Flex組件編譯到SWC文件中,以便用于運行時共享庫(RSL)。
25.2.2. 解決辦法
使用組件編譯器(compc),然后使用命令行參數或者把一個XML配置文件作為加載配置參數傳遞給compc編譯。
25.2.3. 討論
使用下面的語法調用組件編譯器compc:
->compc -source-path . -include-classes oreilly.cookbook.foo -output example.swc
下面是compc用到的一些重要的參數:
-benchmark
輸出性能標準。
-compiler.debug
指定生成的SWC是否應該包含調試信息和功能。
-compiler.external-library-path [path-element] [...]
指定編譯時要進行鏈接檢查的SWC文件或目錄。
-compiler.include-libraries [library] [...]
指定庫(SWC)。
-compiler.library-path [path-element] [...]
指定包含要編譯的SWC文件的SWC文件或目錄。
-compiler.locale [locale-element] [...]
為國際化指定本地地點。
-compiler.optimize
允許優化SWF。
-compiler.services <filename>
給出Flex數據服務配置文件的路徑。
-compiler.theme [filename] [...]
列出應用程序中所有當作主題使用的CSS或者SWC文件。
-compiler.use-resource-bundle-metadata
指定資源包是否包含到應用程序中。
-include-classes [class] [...]
指定RSL中應該包含的所有類;可以重復多次或使用通配符列出路徑。
-include-file <name><path>
指定RSL中應該包含的所有文件;可以重復多次或者使用通配符列出路徑。
-include-resource-bundles [bundle] [...]
設定是否應該包含本地化資源包。
-load-config <filename>
加載配置文件。
-output <filename>
設定compc生成的文件的名稱和位置。
-runtime-shared-libraries [url] [...]
指示本次編譯中compc生成的RSL中應該包含的所有外部RSL。
-runtime-shared-library-path [path-element] [rsl-url] [policy-file-url] [rsl-url] [policy-file-url]
設定應用程序使用的RSL的位置和其他信息。
-use-network
指示SWC是否能訪問網絡資源。
把多個類編譯到運行時共享庫中的命令可能會很長。為了簡化,你可以使用配置文件或者清單文件。
像MXML編譯器(mxmlc)一樣,你可以通過load-config參數為compc指定使用的配置文件。
同樣跟mxmlc一樣,compc也會自動加載一個名字叫做flex-config.xml的默認配置文件。如果你想使用flex-config.xml的所有內容(它里面的許多參數都是必須的),那么可以使用+=運算符在默認的配置基礎上添加新的配置文件:
->compc -load-config+=configuration.xml
所有的參數都可以設定在XML文檔里,并用–load-config傳遞給compc:
<include-sources>src/.</include-sources>