`

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.2\jre\bin\javaw -jar NetDuke.jar”,仅仅是在javaw前加上了一个相对应路径。

      双击run.bat即可在不安装JRE环境的电脑运行此Java应用程序。

3.更进一步的完善

        1、抛弃批处理文件(*.bat)

      用批处理文件运行程序似乎不够专业,虽然它足以完成运行任务。但习惯就象一种毒药一旦染上就很难摆脱它的影响,Windows统治下的人们早已经习惯运行扩展名是EXE的程序,用*.bat他们就会感觉别扭。

      我们可以用一个叫JavaLauncher的免费小程序来代替批处理文件去运行Java程序。JavaLauncher的下载网址是:http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm

         下载下来的文件是一个名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.2\jre\bin\javaw.exe

         -jar NetDuke.jar

         第一行设置指向JAR包NetDuke.jar的目录,由于launch.exe和NetDuke.jar同在一个目录,所以用“.”即当前目录。

      第二行设置指向jre\bin\javaw.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,它有中文版,下载网址是:

      http://www.users.on.net/johnson/resourcehacker/

         用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程序包,而不用借助其它软件。希望对大家有帮助。

分享到:
评论

相关推荐

    Java应用程序的打包发布.pdf

    摘 要:Java语言是近年来较为流行的编程语言,Java应用程序编写并编译运行后,需要对其进行打包发布。本文简要介绍了Java应用程序打包发布的流程,并针对其中的一些常见问题做出了解答。

    java程序打包方案

    让java文件的执行更痛快点,不想给其他人演示个小 软件还要在IDE里看效果现在整理出几个windows下双击就能运行java程序的方法,就是弄成.exe和.jar

    java打包与发布 说明

    详细说明了JAVA程序的打包和发布过程。

    项目打包工具发布java程序

    可以将写好的java程序打包发布,便于操作,简化过程,使电脑可以不用安装相关的环境

    如何把一个java程序打包成exe文件.doc

    核心提示:首先,将编译好的程序打包成jar文件,然后做出exe,这样代码就不可见了;但是exe文件在没有安装jre的电脑上不能运行,如果要求客户再去安装jre 设置环境...使用这几个工具,您也可以顺利的发布您的java程序!

    java程序打包exe文件工具

    j2ewiz(java 转EXE工具)介绍 java 程序编译后得到的 class 文件,不能够直接运行。通常采用的通过批处理文件...转换成 exe 文件之后,发布和运行 java 程序就非常简单和方便 j2ewiz就是一个简单的转换软件 非常方便

    应用程序打包发布步骤

    myeclipse中C/S应用程序打包发布步骤,

    Java工程打包成安装程序方法_培训文档

    Java工程打包成安装程序方法_培训文档 包括单.jar的文件打包发布与jar/资源/lib一起打包发布介绍精简版

    java课程设计 中国象棋游戏 内含源代码 打包发布

    java课程设计 中国象棋游戏 内含源代码 打包发布

    idea将Java项目打包Jar包生成exe应用程序.docx

    输入Java最小Jre版本号,即低于这个版本的Jre无法运行该程序,接着点击“Advanced Options”-“Search sequence”,设置一下我们的JRE,之前说过,如果客户机上没装Jre咋办?,没关系我们捆绑一个进去

    Java项目打包发布为可执行程序.doc

    Java项目打包发布为可执行程序

    java自动打包工具

    介绍下这个打包工具 把本次你改动的java工程下的文件对应的class文件自动打包,然后热部署发布即可 如果你需要频繁改动java代码,热发布几个文件到服务器上,你会怎么做呢? 没有工具的人会手动拷贝目录 然后到...

    Java聊天室打包发布+源代码

    Java聊天室打包发布+源代码,能够运行,附带源代码,适合Java网络开发的新手看

    JAVA打包exe

    exe4j是一个帮助你集成Java应用程序到Windows操作环境的java可执行文件生成...exe4j帮助你以一种安全的方式启动你的 java应用程序,来显示本地启动画面,检测及发布合适的JRE和JDK,以及进行启动时所发生的错误处理等。

    java程序发布成window后服台

    手所手教你如何将一个java程序打包了发布成window后台服务,并且提供相应的例子

    JAVA 将class打包为jar

    发布JAVA应用程序(将CLASS文件打包成.jar文件) 将一个CLASS文件打包成一个.jar文件分为以下几个步骤方法

    java应用车程序发布过程

    详细描述了命令行和eclipse进行java应用程序发布打包的过程

    手把手教你将java程序安装成windows服务(源码+教程)

    最近工作需要将java程序打包发布,并且能安装成windows服务,而且需要在没有安装jre的机器上运行。研究了一下java service wrapper,在网上找了相关的资料,但是都说得不是很详细,照着做有一定难度。所以我分步总结...

    java课程设计 标准化考试系统 内含源代码 打包发布

    java课程设计 标准化考试系统 内含源代码 打包发布

    java打包为exe

    制作一个可执行的 JAR 文件包来发布你的程序是 JAR 文件包最典型的用法。 Java 程序是由若干个 .class 文件组成的。这些 .class 文件必须根据它们所属的包不同而分级分目录存放;运行前需要把所有用到的包的根目录...

Global site tag (gtag.js) - Google Analytics