本教程是为JDK 8编写的。本页中描述的示例和实践不利用后续版本中引入的改进,并可能使用不再可用的技术。
请参阅Java语言更改,了解Java SE 9及其后续版本中更新的语言特性的摘要。
请参阅JDK版本说明,了解所有JDK版本的新功能、增强功能以及已删除或不推荐使用的选项的信息。
本主题介绍了用于丰富的互联网应用(RIA)的Java网络启动协议(JNLP)文件的语法。
以下代码片段显示了一个Java Web Start应用程序的示例JNLP文件:
<?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" codebase="" href=""> <information> <title>动态树演示</title> <vendor>Dynamic团队</vendor> <icon href="sometree-icon.jpg"/> <offline-allowed/> </information> <resources> <!-- 应用程序资源 --> <j2se version="1.6+" href= "http://java.sun.com/products/autodl/j2se"/> <jar href="DynamicTreeDemo.jar" main="true" /> </resources> <application-desc name="动态树演示应用程序" main-class="webstartComponentArch.DynamicTreeApplication" width="300" height="300"> </application-desc> <update check="background"/> </jnlp>
以下表格描述了JNLP文件中常用的元素和属性。单击父链接以查看元素的父元素。
JNLP文件中常用的元素和属性元素
属性
描述
自版本
必需
JNLP文件的最顶层xml元素。
1.0
是
spec
属性的值可以是1.0、1.5或6.0,也可以使用通配符,如1.0+。它表示该JNLP文件可以与的JNLP规范的最低版本。
1.0
codebase
JNLP文件中的href
属性中指定的所有相对URL的基本位置。
1.0
href
JNLP文件本身的URL。
1.0
version
正在启动的RIA的版本,以及JNLP文件本身的版本。
1.0
information 父元素
包含描述RIA及其源的其他元素。
1.0
是
os
应考虑此信息元素的操作系统。
1.5.0
arch
应考虑此信息元素的架构。
1.5.0
platform
应考虑此信息元素的平台。
1.5.0
locale
应考虑此信息元素的区域设置。
1.5.0
title 父级
RIA的标题。
1.0
是
vendor 父级
RIA的提供者。
1.0
是
homepage 父级
RIA的主页。
1.0
href
指向包含有关此RIA更多信息的URL。
1.0
是
description 父级
描述RIA的简短说明。
1.0
kind
指示描述的类型的指示器。合法值为单行、简短和工具提示。
1.0
icon 父级
可用于标识RIA给用户的图标。
1.0
href
指向图标文件的URL。可以是以下格式之一:gif、jpg、png、ico。
1.0
是
种类
指示图标的建议使用方式,可以是:默认、选中、禁用、悬停、启动页或快捷方式。
1.0
宽度
可用于指示图像的分辨率。
1.0
高度
可用于指示图像的分辨率。
1.0
深度
可用于指示图像的分辨率。
1.0
允许脱机运行 父级
指示此RIA在客户端系统断开网络连接时是否可操作。
1.0
快捷方式 父级
可用于指示RIA对桌面集成的偏好。
1.5.0
在线
可用于描述RIA对创建在线或离线运行快捷方式的偏好。
1.5.0
桌面 父级
可用于指示RIA对将快捷方式放置在用户桌面上的偏好。
1.5.0
菜单 父级
可用于指示RIA对将菜单项放置在用户的开始菜单中的偏好。
1.5.0
子菜单
用于指示RIA首选将菜单项放置在何处的偏好。
1.5.0
关联关系 父级
可用于提示JNLP客户端,RIA希望作为某些扩展和某个MIME类型的主要处理程序在操作系统中注册。如果包含此元素,则必须同时包含offline-allowed元素,或者为jnlp元素的href属性设置值。
1.5.0
扩展
RIA请求注册处理的文件扩展名列表(用空格分隔)。
1.5.0
mime-type
RIA请求注册处理的MIME类型。
1.5.0
相关内容 父级
与RIA集成的其他相关内容。
1.5.0
href
指向相关内容的URL。
1.5.0
是
更新 父级
RIA更新应由JNLP客户端处理的偏好设置。
1.6.0
check
JNLP客户端应检查更新的偏好设置。值可以是always、timeout或background。
1.6.0
策略
在RIA启动之前,当有新版本可用时,JNLP客户端应该如何处理RIA更新的偏好设置。值可以是always、prompt-update或prompt-run。
1.6.0
1.0
安全性 父级
可以用于请求增强的权限。如果不包含此元素,则应用程序在安全沙箱中运行。
1.0
all-permissions 父级
请求使用所有权限运行RIA。
1.0
j2ee-application-client-permissions 父级
请求使用符合J2EE应用程序客户端环境安全规范的权限集运行RIA。
1.0
资源 父级
描述RIA所需的所有资源。
1.0
是
操作系统
应考虑资源元素的操作系统。
1.0
架构
应考虑资源元素的架构。
1.0
locale
应考虑资源元素的区域设置。
java 或 j2se 父级
用于运行RIA的Java软件版本。
1.6.0 (java)
version
使用的版本范围的有序列表。
1.0
是
href
表示此版本Java软件的供应商及其下载地址的URL。
1.0
java-vm-args
RIA希望JNLP客户端在启动JRE软件时使用的一组额外的标准和非标准虚拟机参数。
1.0
initial-heap-size
Java堆的初始大小。
1.0
max-heap-size
Java堆的最大大小。
1.0
jar 父级
RIA类路径中的一个JAR文件。
1.0
是
href
JAR文件的URL。
1.0
是
version
JAR文件的请求版本。需要使用基于版本的下载协议
1.0
主要
指示此JAR文件是否包含RIA的main
方法所在的类。
1.0
下载
表示此JAR文件可以进行懒加载,或在需要时下载。
1.0
大小
JAR文件的可下载大小(以字节为单位)。
1.0
部分
可用于将资源分组在一起,以便同时下载。
1.0
本地库 父级
一个包含本地库的JAR文件,位于其根目录中。
1.0
href
JAR文件的URL。
1.0
是
版本
JAR文件的请求版本。需要使用基于版本的下载协议。
1.0
下载
可用于指示此JAR文件可以进行懒加载。
1.0
大小
JAR文件的可下载大小(以字节为单位)。
1.0
部分
可用于将资源分组在一起,以便同时下载。
1.0
扩展父级
指向与此RIA一起使用的其他组件描述或安装程序描述的指针。
1.0
href
指向附加扩展JNLP文件的URL。
1.0
是
version
附加扩展JNLP文件的版本。
1.0
name
附加扩展JNLP文件的名称。
1.0
ext-download 父级
可以在扩展元素中使用,表示组件扩展中包含的部分。
1.0
ext-part
可以预期在扩展中找到的部分的名称。
1.0
是
download
可用于指示此扩展可以急切地或懒惰地下载。
1.0
part
表示在此JNLP文件中包含扩展的部分的名称。
1.0
package 父级
可以用于向JNLP客户端指示哪些包实现在哪些JAR文件中。
1.0
名称
给定部分的JAR文件中包含的包名。
1.0
是
部分
包含包含给定包名的JAR文件的部分名称。
1.0
是
递归
可用于指示给定名称开头的所有包名都可以在给定部分中找到。
1.0
属性 父级
定义一个系统属性,可通过System.getProperty
和System.getProperties
方法访问。
1.0
名称
系统属性的名称。
1.0
是
值
系统属性的值。
1.0
是
注意:JNLP文件必须包含以下之一:application-desc、applet-desc、component-desc或installer-desc。
1.0
是
application-desc 父级
表示这是一个应用程序的JNLP文件。
1.0
main-class
应用程序的public static void main(String[])
方法所在的类的名称。
1.0
是
argument 父元素
每个参数按顺序包含要传递给main
方法的附加参数。
1.0
applet-desc 父元素
表示这是一个小程序的JNLP文件。
1.0
main-class
主小程序类的名称。
1.0
是
documentbase
小程序的文档基址,以URL的形式。
1.0
name
小程序的名称。
1.0
是
width
小程序的宽度(以像素为单位)。
1.0
是
height
小程序的高度(以像素为单位)。
1.0
是
param 父元素
一组可以传递给小程序的参数。
1.0
name
此参数的名称。
1.0
是
value
此参数的值。
1.0
是
component-desc 父级
表示这是一个组件扩展的JNLP文件。
1.0
installer-desc 父级
表示这是一个已安装扩展的JNLP文件。
1.0
main-class
安装程序中包含public static void main(String[])
方法的类的名称。
1.0
是
Java Web Start软件支持使用Java平台支持的任何字符编码对JNLP文件进行编码。有关Java平台中字符编码的更多信息,请参阅支持的编码指南。要对JNLP文件进行编码,请在该文件的XML prolog中指定一个编码。例如,以下行指示JNLP文件以UTF-16进行编码。
<?xml version="1.0" encoding="utf-16"?>