你得感謝Java 1.2所提供的JAR增強功能。你現在可以運行已經被歸檔(archived)的applets和應用程序了。例如,如果你傳送給Java解釋器一個-jar命令,你就可以運行已經歸檔(archived)的應用程序了。打包壓縮在JAR文件中的Java應用程序可以直接在Windows或者Solaris桌面上執行。
這些歸檔文件(archives)自動執行的方式取決於你所使用的系統。當你在32位的Windows系統中安裝了Java 1.2 運行環境後,安裝程序將注冊一個缺省的JAR文件連接。之後,你可以通過-jar 選項調用Java解釋器,就可以自動運行JAR文件。對於 Solaris 2.6操作系統, Sun實際上擴展了該操作系統的內核,這樣系統就可以識別JAR文件了。內核的擴展部分使得Solaris 2.6通過-jar選項直接調用Java解釋器,這樣Solaris系統可以同執行內在的Solaris可執行文件一樣,執行archive 文件。
運行已經歸檔(archived)的Java小程序同運行已經歸檔(archived)的應用程序有所不同,因為你需要告訴Java applet viewer或者支持Java的浏覽器如何使用applet。通常情況下,通過創建包含<APPLET>標識的網頁就可以了。該標識的有關屬性值會告訴你浏覽器關於applet的有關情況,諸如它的類名和位置。
使用<APPLET> 標識,你可以把一個或者更多個archives同applet聯系起來。當你在小程序中使用archive文件時,浏覽器總是先在archives中尋找需要的類和資源文件。如果浏覽器在archives中找不到這些文件,浏覽器就試圖從服務器獲得這些文件。如果archives 不存在,情況也是如此。
用來在applet中標明Java archive的屬性是ARCHIVE。屬性ARCHIVE總是同CODE屬性一起配合使用的。CODE屬性標明了主applet類的名稱, ARCHIVE屬性標明了archive文件的位置,該位置可以通過相對的或者絕對的URL來定義。對於相對的URL,你的浏覽器根據applet代碼的根目錄,來決定archive文件的位置。你是否回憶起來,代碼所在位置的根目錄就是applet的源代碼所在位置,該位置可以用CODEBASE屬性標明。
在下面的例子中,主applet類是myapp.class,浏覽器在相應的屬性文件中尋找它。如果浏覽器找不到applet類,浏覽器就到服務器上去尋找該applet類。
<APPLET CODE="myapp.class" ARCHIVE="myapp.jar" WIDTH="250" HEIGHT="250">
</APPLET>
如果一個applet使用了不止一個archive,你可以輸入在逗號分隔開的清單中輸入archives文件的URL。下面的例子中,applet使用了兩個archives文件。第一個archive名為strider1.jar,第二個archive 名為strider2.jar。
<APPLET CODE="strider.class" ARCHIVE="strider1.jar,strider2.jar" WIDTH="300" HEIGHT="300">
</APPLET>