zoukankan      html  css  js  c++  java
  • Java应用程序项目的打包与发行

    Java应用程序项目的打包与发行
      
    这里主要是讲解一下怎样将 Java程序打包成独立运行的exe程序包,以下这种方法应该是最佳的解决方案了。NetDuke的EXE
    程序包了是使用这种方案制作的。在操作步骤上还是比较简单的,而且通用性强。 
    1.程序打包 
            首先将程序打成Jar包,打包命令:jar cf 包文件名.jar *.class。接下来编译包中的清单文件MANIFEST.MF 。 
            Manifest-Version - 指定清单文件的版本号 
            Main-Class - 指定程序运行的入口类。注意:类名后不要加class扩展名 
    2.让用户电脑不必安装JRE环境 
            通常运行Java程序有个前提条件:用户电脑必须先安装JRE环境。虽然安装JRE环境非常简单,但毕竟多了一步,算
    是有一点点的瑕疵。这里给出一个不必让用户安装JRE环境的方法,其实现步骤如下: 
         (1)将原JDK中的“jre”目录复制到“D:项目文件夹java1.4.2”目录下(java1.4.2也可换成其他名称)。 
         (2)将JDK和JRE从本机卸载掉,这样表示本机没有安装JAVA运行环境。 
         (3)修改批处理文件run.bat中的命令为“start java1.4.2jreinjavaw -jar NetDuke.jar”,仅仅是在javaw前
    加上了一个相对应路径。 
          双击run.bat即可在不安装JRE环境的电脑运行此Java应用程序。 
    3.更进一步的完善 
            1、抛弃批处理文件(*.bat) 
          用批处理文件运行程序似乎不够专业,虽然它足以完成运行任务。但习惯就象一种毒药一旦染上就很难摆脱它的影响
    ,Windows统治下的人们早已经习惯运行扩展名是EXE的程序,用*.bat他们就会感觉别扭。 
          我们可以用一个叫JavaLauncher的免费小程序来代替批处理文件去运行Java程序。JavaLauncher的下载网址是:
    [url]http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm[/url] 
             下载下来的文件是一个名JavaLauncher.zip的压缩包,解压后的目录结构如下: 
             1.source目录包含了JavaLauncher的源程序,是用C语言写的 
          2.changes.txt是新版的修改说明 
          3. launch.exe是主程序 
          4. launcher.cfg是配置文件 
          5.readme.txt是一些说明和示例 
          我们只需要launch.exe、launcher.cfg两个文件,将这两个文件复制到打包文件所在的目录。launcher.cfg是一个仅
    三行内容的文本文件,将它修改如下: 
             . 
             .java1.4.2jreinjavaw.exe 
             -jar NetDuke.jar 
             第一行设置指向JAR包NetDuke.jar的目录,由于launch.exe和NetDuke.jar同在一个目录,所以用“.”即当前目录
    。 
          第二行设置指向jreinjavaw.exe的路径。要先将jre目录复制到了java1.4.2子目录中 
    配置好launcher.cfg后,双击launch.exe即可运行java应用程序。 
          如果仔佃研究eclipse的启动方式,发现eclipse和JavaLauncher的原理一样:eclipse.exe相当于launch.exe,
    startup.jar相当于NetDuke.jar。只不过eclipse.exe不象launch.exe要具有通用性,所以它没有*.cfg这样的配置文件,而
    是将启动信息固化在eclipse.exe中。 
    4.美化图标 
             launch.exe文件的图标太单调了,让我们给它换个好看点的。换程序的图标需要用到一个免费的软件:Resource 
    Hacker,它有中文版,下载网址是: 
          [url]http://www.users.on.net/johnson/resourcehacker/[/url] 
             用Resource Hacker来替换launch.exe的图标的步骤如下: 
          (1)运行Resource Hacker。 
          (2)单击主菜单“文件→打开”,将launch.exe载入到程序中。 
          (3)选择左边的“图标→1→1030”,然后右键单击“1030”项,选择“替换资源…”。然后在弹出窗口中单击“打
    开新图标文件”,选择一个满意的图标,然后单击“替换”按钮。 
           附注:图标文件可以是exe、dll、res、ico,该软件可以从exe、dll、res抽取出图标,本例选择的是Java的吉祥物
    Duke.ico。 
          (4)选择“文件→另存为”,取名NetDuke.exe。 
           附注:按理说选择“保存”也是可以的,这时Resource Hacker会将老的launch.exe备份成launch_original.exe。但
    也许是刷新上有问题,用“保存”方式有时launch.exe无法显示出新图标,但有时又可以。 
          (5)最后的目录如下所示,可见NetDuke.exe(也就是launch.exe改了个名称)的图标换成了Java的图标。双击
    NetDuke.exe即可运行Java应用程序。 
           1.java1.4.2(文件夹) 
               2.launcher.cfg 
               3.NetDuke.exe 
               4.NetDuke.jar 
    5.最后的打包 
             发送给用户之前,通常要用WinZip或WinRAR将所有的文件全部打成一个压缩包,然后用户得到这个压缩包后,将其
    解压缩后即可运行程序,Eclipse软件就是这种方式。 
          另外大家要注意的几点: 
          (1)Java应用程序中用到的资源,它都必须要求写绝对路径,否则在其它机子上就会出现找不到资源。所以一般我们
    在写程序时就要注意一定要用绝对路径,例如:Toolkit.getDefaultToolkit().getImage(getClass().getResource("文件名
    ")));像这种写法就一定没问题。当然如果要将资源传递给构造器的话就没办法了,例如:NetDuke frame = new NetDuke("
    资源");这是我们就须要将资源拷贝到项目文件夹下一起打包。 
          (2)一般我们的Jre都有60多M,这样和程序一起打包就显得很臃肿。所以要将Jre适当地减肥,具体的作法这样不再
    累赘,大家在一台还没装JRE的机上测试,将JRE中的一个个文件删除后程序是否可正常运行。还有一个就是rt.jar这个Java
    类库也要大量的砍伐。 
           通过以上的操作即可得到使大家满意的一个exe程序包,而不用借助其它软件。希望对大家有帮助。
  • 相关阅读:
    使用SWFUpload进行多文件上传
    TSQL递归
    Silverlight之视频录制
    Silverlight之摄像头麦克风使用
    Silverlight之文件上传组件
    SQL FOR XML
    XAML开发入门之XAML核心语法
    Ajax技术三种实现方式之xmlhttp+httphandler篇 (三)
    Ext中超时设定 ext.ajax.timeout
    后台执行js先执行前端的JS函数,再执行后台函数的按钮实
  • 原文地址:https://www.cnblogs.com/jym-sunshine/p/4909742.html
Copyright © 2011-2022 走看看