Java Network Launching PRotocol (JNLP,java网络加载协议) 承诺改变这个现状。通过JCP(Java Community Process)的JSR-56的开发, JNLP解决了很多先前用java开发针对客户端的功能的问题。一个JNLP客户端是一个应用程序或者说服务,它可以从宿主于网络的资源中加载应用程序。假如你使用JNLP打包一个应用程序,那么一个JNLP客户端能够:
o 为该应用探测,安装并且使用正确版本的JRE(java运行时环境) o 从浏览器或者桌面加载应用程序 o 当新版本的应用出现时自动下载最新的版本。 o 为了加速启动速度在本机缓存应用程序需要的类 o 可以作为applet或者应用程序运行 o 在必要的情况下下载原始的库 o 以安全的方式使用诸如文件系统这样的本机资源 o 自动定位和加载外部依靠资源
Sun 提供了一个实现JNLP的称为Java Web Start(JWS)的参考实现。让我们使用它开发一个使用JFC Swing的简单应用。为了做这个,你需要从http://java.sun.com/prodUCts/javawebstart下载JWS。(译者注:JDK的新版本JDK1.4已经内置JWS,无须另外下载。)