作者: william robert stanek / 翻译:朱英
在应用程序中和applets小程序中使用archive
你得感谢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>
闽公网安备 35060202000074号