jnlp(Java网络加载协议)原来很简单
Java Network Launching Protocol (JNLP,java网络加载协议)。
jnlp是什么?是java提供的一种让你可以通过浏览器直接执行java应用程序的途径,它使你可以直接通过一个网页上的url连接打开一个java应用程序.好处就不用说了,如果你的java应用程序以jnlp 的方式发布,如果版本升级后,不需要再向所有用户发布版本,只需要更新服务器的版本,这就相当于让java应用程序有了web应用的优点了.
如何使用jnlp:
1.把你的应用打包成一个可执行的jar文件,放在可以访问的web目录下,如appTest.jar.
用ant脚本可以这样,当然也可以手工用jar工具打包.
<jar destfile="${desc.dir}/${youApp.jarName}" update="true" compress="true">
<manifest>
<attribute name="Main-Class" value=""com.youApp.MainClass"/>
</manifest>
<fileset dir="${class.dir}">
...
</fileset>
</jar>
2.编写一个xml文件test.jnlp 内容如下
<?xml version="1.0" encoding="UTF-8"?>
<jnlp codebase="http://localhost/yousite/" name="SeatingChartBuilder"
href="http://localhost/yousite/test.jnlp">
<information>
<title>Seating Chart Builder</title>
<vendor>Etix.com, Inc.</vendor>
<offline-allowed/>
<description>An Application To Seating Chart Builder!</description>
</information>
<application-desc main-class="com.youApp.MainClass"/><!--这里是你的应用的入口程序名-->
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.4+"/>
<jar href="appTest.jar" /><!-- 这里是你的打包的应用-->
</resources>
</jnlp>
3.必须为你的jar文件签名
先在命令行用keytool产生一个keystore文件.
keytool -genkey -keystore you.keystore –alias youApp
命令行用jarsigner签名,当然这时候需要生成keystore时的密码
jarsigner -keystore you.keystore appTest.jar youApp
ok现在将appTest.jar文件放在你的web的/yousite目录下用地址
http://localhost/yousite/test.jnlp 就可以启动你的应用程序了,
启动时会弹出对话框让你确认签名,点是就可以了.
在这里看看sun的demo吧:http://java.sun.com/products/javawebstart/demos.html
参考 http://www.yeegle.com/articleview/33954.aspx