理解鏈接可以幫助你理解RSL是怎樣工作的. Flex編譯器支持靜態鏈接和動態鏈接. 靜態鏈接是最通常的方法. 但是動態鏈接使你借助于RSL來實現SWF文件的縮水以及應用的下載次數.
當你使用靜態鏈接時, 編譯器將應用中所有引用的類和依賴生成到最終的SWF文件中, 這個文件會比較大, 下載也會比較慢, 但是下載完畢后, 運行會比較快, 因為SWF文件中已經包含了所有的代碼.
如果你的應用中使用了類庫, 那么你需要使用類路徑或者是添加SWC文件. 如果是使用類路徑, 編譯器會將類路徑中用到的那部分類打包生成到SWF文件中. 如果是使用SWC文件, 編譯器會將整個SWC文件打包到SWF文件中.
動態鏈接是這樣的: 一個應用要使用的一部分類存在于一個外部的文件中, 運行時動態加載. 這樣的話, 主SWF文件可以小一些, 但是應用依賴于運行時加載的外部文件. RSL就是使用動態鏈接的.
如果想使用動態鏈接類, 需要把它們編譯成庫. 然后編譯器將庫中的內容從SWF文件剔除出去. 而且必須在編譯時提供鏈接檢查.
為指定哪些文件是動態鏈接的,需要使用外部庫路徑選項,外部選項或者外部加載編譯選項. 這些選項告訴編譯器從應用中去除此部分內容, 而預備在運行時調用. 外部選項為動態鏈接指定了單獨的類. 外部加載選項指定了一個XML文件, 描述了動態鏈接的類.
指定SL的外部資源的順序是非常關鍵的, 因為被其他類調用的基礎類必須被首先加載.
你還要用runtime-shared-libraries選項來指定RSL的位置.
你可以使用link-report這個編譯選項來查看應用的鏈接信息.