`
thomas0988
  • 浏览: 486692 次
  • 性别: Icon_minigender_1
  • 来自: 南阳
社区版块
存档分类
最新评论

jnlp 令我吃惊!

阅读更多
JNLP是Java Network Launch Protocol的简写,是一种用来在网络中部署应用程序的一种协议;在客户端只需要安装java web start就可以使用服务器端的软件,它具有自动更新应用程序版本的功能;其实要部署一个jnlp程序也是很简单的,下面我们就来部署一个简单的程序;要在服务器部署应用程序,一个最主要的就是编写一个部署文件,它是一种xml格式的文件,以jnlp为后缀;而你的应用程序就必须打包成jar文件格式;假设你你现在有一个HelloJNLP.jar的文件,我们下面就来编写它的部署文件;
新建文件HelloJNLP.jnlp文件,然后使用你喜欢的文件编辑器打开该文件,下面开始来编写该文件
首先在文件中写如xml的版本和使用的编码,这行是可选的,不过在实际部署中最好还是写上这行;如下:
<?xml version="1.0" encoding="UTF-8"?>
然后以<jnlp>标记开始,在这里你要把你应用程序的地址写好,这个地址可以以本地文件目录,也可以是一个网络url,如下
<!-- codebase 也可以是file:///形式 -->
 
在<information>中你可以写入在应用程序下载是显示的一些资料,如标题,描述,图标,程序的存放目录等
<information>
    <title>Hello</title>
    <vendor>HelloJNLP</vendor>
    <homepage href=""/>
    <icon href="HelloJNLP.jpg"/>
  </information>
 
 还有一个可选的<offline-allowed/>标记,它允许application在断网的情况下也能运行;
 
在<security>中你可以配置程序运行时的安全咨询,它可以是
<j2ee-application-client-permissions/>
<all-permissions/> 
这个标记也可以不写;
 
然后在<resources>中你可以配置jre的版本,程序相对codebase的路径
<resources>
    <j2se version="1.5+"/>
    <jar href="HelloJNLP.jar"/>
  </resources>
 
假如你在打包jar文件的时候没有指定主类,那么你必须使用以下方法指定一个主类
<application-desc main-class="HelloJNLP"/>
 
一个完整的jnlp文件是:
<?xml version="1.0" encoding="UTF-8"?>
<!-- file Hello.jnlp -->
<jnlp spec="1.0+"
codebase="
http://192.9.200.156:8080/jnlp"
href="
http://192.9.200.156:8080/jnlp/Hello.jnlp">
  <information>
    <title>Hello</title>
    <vendor>Tech Tips Sample</vendor>
    <homepage href=""/>
    <icon href="HelloJNLP.jpg"/>
  </information>
 <!--
  <offline-allowed/> 
  <security>
   <j2ee-application-client-permissions/>
  </security>
  -->
  <resources>
    <j2se version="1.5+"/>
    <jar href="HelloJNLP.jar"/>
  </resources>
  <application-desc main-class="HelloJNLP"/>
</jnlp>
 
我们下面将它部署到tomcat下,首先你需要在%CATALINA_HOME%conf/web.xml中添加一个mime-mapping:
<mime-mapping>
      <extension>jnlp</extension>
       <mime-type>application/x-java-jnlp-file</mime-type>
  </mime-mapping>
 
然后在%CATALINA_HOME%\webapps下建个jnlp的文件夹,把HelloJNLP.jnlp和HelloJNLP.jar文件copy过去,然后在里面建个WEB-INF目录;
然后你就可以通过http://localhost:8080/jnlp/HelloJNLP.jnlp来运行程序了
 
 
 文件打包可以通过jdk中的jar,假如要将当前目录下所以文件打包到HelloJNLP.jar中,你可以在dos下输入:
jar -cvf HelloJNLP.jar *.class
 
你还可以通过keytool、jarsigner来为你的jar文件签名
 创建签字
keytool -genkey -keystore myKeys -alias jdc
为jar文件签字
jarsigner -keystore myKeys jarName.jar jdc

 

 

 

转载地址:http://hi.baidu.com/yclt/blog/item/716d1b08a8fd8730e824886d.html

分享到:
评论
2 楼 longzhu007 2009-02-20  
客户端访问是把.jar文件下载到本地吗?那下载到哪呢?
1 楼 longzhu007 2009-02-20  
学习了,还有相关的资料吗?

相关推荐

    JNLP

    标题 "JNLP" 指的是 Java Network Launch Protocol,这是一种由Java平台提供的技术,用于在网络上启动和运行Java应用程序。JNLP是Java Web Start的一部分,允许用户在浏览器或者独立的桌面环境中无缝地下载、安装和...

    JNLP开发(JWS)

    ### JNLP开发(JWS):深入了解与实践 #### JNLP与Java WebStart:概念解析 JNLP(Java Network Launching Protocol),作为一项由Sun Microsystems在2000年提出的规范(JSR 56),为Java应用程序提供了一种通过...

    jenkins-jnlp-slave镜像

    jenkins-jnlp-slave镜像

    jnlp 新手开发把手教

    JNLP 新手开发把手教 JNLP(Java Network Launching Protocol)是一种通过网络部署和发布 Java 程序的新技术,它可以用来发布 Application,也可以用来发布 Applet。JNLP 的主要特点是安全、稳定、易维护、易使用。...

    jnlp详细文档

    这个"jnlp详细文档"可能是关于如何使用JNLP文件进行Java Web Start应用部署的指南。 在Java Web Start中,JNLP文件扮演着至关重要的角色。它提供了以下关键信息: 1. **应用元数据**:JNLP文件包含关于应用程序的...

    jnlp例子

    我的Java应用 你的公司/开发者姓名 &lt;/jnlp&gt; ``` 在上述示例中: - `spec` 属性定义了JNLP规范的版本。 - `codebase` 是应用程序的发布位置,用户从这个URL下载资源。 - `href` 指定了JNLP文件的...

    jnlp本地共享策略

    用jnlp开启一个服务,实现本地桌面远程共享

    1267342204836-integrated.jnlp

    java哪里都好用,不会就用jnlp来下载JAVA吧,就用它来下载,很不错的下载软件

    JNLP ant webstart sign genkey sample

    标题“JNLP ant webstart sign genkey sample”涉及到的是Java网络启动(Java Web Start,JWS)技术,以及如何使用Ant构建工具来签名JNLP应用。在Java Web Start中,JNLP(Java Network Launch Protocol)是用于启动...

    jenkins-jnlp.tar.gz

    https://blog.csdn.net/weixin_46560589/article/details/128801979 文章《【Kubernetes 企业项目实战】06、基于 Jenkins+K8s 构建 DevOps 自动化运维管理平台(中)》测试 jenkins 的 CI/CD 实验所需资料文件!

    Web程序中的JRE版本检测及JNLP文件的直接打开

    本文将深入探讨如何在Web环境中检测用户系统上的JRE版本,并通过Java Network Launch Protocol (JNLP)文件直接启动应用程序。 首先,我们要了解如何检测用户的JRE版本。这通常通过JavaScript实现,因为JavaScript...

    jfreechart-1.0.8-demo.jnlp

    标题 "jfreechart-1.0.8-demo.jnlp" 指示的是一个基于JFreeChart库的1.0.8版本的演示程序,其中可能包含了展示JFreeChart功能的各种图表示例。JFreeChart是一个开源Java库,用于创建高质量的、可定制的图表,包括...

    OneWireViewer.jnlp

    OneWireViewer软件的java运行版本,ONEWIREVIEWER JAVA WEB入门,可以将OneWireViewer作为Java™Web Start程序安装在Java支持的操作系统上。

    maven-jnlp-plugin-1.4.jar

    maven-jnlp-plugin-1.4.jar

    jviewer.jnlp

    java工具包jviewer

    jfreechart-1.0.11-demo.jnlp

    提供了使用jfreechar能完成的15大类的图,比如柱状图,饼图等。

    androidscreencast.jnlp

    https://xsavikx.github.io上的一个电脑操作手机并可以录屏的小工具,需要安装jdk

    tutorial.jnlp

    javafx,java,脚本语言,新技术,例子,很有前景的技术语言,

Global site tag (gtag.js) - Google Analytics