`
woshixushigang
  • 浏览: 576100 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Java程序打包成独立运行的exe程序包

    博客分类:
  • j2ee
阅读更多

这里主要是讲解一下怎样将 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应用程序打包成exe工具

    1. **为什么需要将Java程序打包成.exe**: - 用户友好:大多数Windows用户对.exe文件更熟悉,无需安装JRE即可运行。 - 环境独立性:打包成.exe可降低依赖性,避免因缺少JRE导致的运行问题。 - 部署简化:单个.exe...

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

    **核心概念:** 在将Java程序打包成EXE文件之前,通常需要先将其打包成一个独立的JAR文件。这样做有助于简化后续的打包流程,并确保所有必要的类和资源都被正确包含。 **工具推荐:** `fatJar` 插件是Eclipse用户的一...

    Java程序打包jar及exe所需文件

    在Java开发过程中,将程序打包成可执行的...通过以上步骤,我们可以将Java程序打包成jar或exe文件,方便用户下载和运行,同时也提高了软件的分发效率。在实际操作中,根据项目需求选择合适的打包工具和策略至关重要。

    java 代码打包成exe

    2. **Exe4j 工具**:这是一个专门用于将 Java 应用程序打包成 EXE 文件的工具,通常需要获取软件和授权账号,可以通过网络进行下载。 #### 三、步骤详解 ##### 1. 将 Java 项目打包成可执行 JAR 文件 **目的**:...

    java jar 打包成 exe,双击就可以运行

    总之,将Java程序打包成`.exe`文件,可以提升用户的使用体验,简化部署过程,但同时也需要处理好与Java环境的关联、错误处理和平台兼容性等问题。使用适当的工具和正确的配置,可以有效地完成这一转换。

    java程序打包成exe文件

    标题中的“java程序打包成exe文件”指的是将Java编写的程序转换为Windows操作系统下的可执行文件(.exe),这样非Java环境的用户也能直接运行,无需先安装Java运行环境(JRE)。这个过程通常借助第三方工具来实现,...

    java程序打包成exe

    Java程序通常以`.jar`...通过以上步骤,你可以将Java程序打包成`.exe`文件,使得非Java用户也能轻松运行你的程序。但要注意,这种方式可能牺牲了一些Java的灵活性和跨平台性,因此在选择打包工具和设置时需谨慎考虑。

    java程序打包exe

    Java程序打包成exe是将Java应用程序转换为Windows操作系统下的可执行文件(.exe)的过程,这样非Java环境的用户也能直接运行程序。这通常通过特定的工具实现,比如提到的exe4j。exe4j是一个专门用于Java应用程序打包...

    java 程序打包成jar文件后 连接数据库出错(教程方法)

    在Java编程中,将程序打包成JAR文件是常见的部署方式,这使得代码可以作为一个独立的可执行单元进行分发。然而,在打包包含数据库连接的Java应用程序时,可能会遇到一些问题,尤其是涉及到像MySQL这样的外部数据库。...

    java代码打包成exe

    - 也可以使用JavaFX的打包工具将应用程序打包成可独立运行的可执行文件,适用于多个平台。 9. **持续集成与发布**: - 对于持续集成和自动化发布流程,可以集成这些打包工具到构建脚本(如Maven或Gradle)中,...

    JAVA程序打包成exe文件

    ### JAVA程序打包成EXE文件知识点详解 #### 一、背景与需求分析 在软件开发领域,特别是使用Java语言进行跨平台应用开发时,开发者常常会遇到如何将编写的Java程序打包成可以在不同操作系统上直接运行的应用程序的...

    java swing打包成exe的软件和使用说明文档

    总结,将Java Swing应用程序打包成.exe是一项重要的部署步骤,通过选用合适的打包工具,如Launch4j或JSmooth,结合详细的使用说明文档,开发者可以轻松完成这一过程,使得Java Swing应用能在Windows环境中无缝运行。

    java打包工具打包成exe文件

    总的来说,将Java程序打包成EXE文件是一项实用的技术,可以方便非Java开发者或普通用户运行你的程序。使用上述提到的工具,你可以轻松实现这一目标,同时定制化你的程序外观和运行环境。不过,要注意的是,生成的EXE...

    java项目打包成exe格式

    2. **exe4j**:exe4j是由IntelliJ IDEA的开发者JetBrains开发的一款软件,它允许Java开发者将Java应用程序打包成Windows上的.exe可执行文件。exe4j不仅可以创建独立的可执行文件,还可以生成启动脚本和安装程序,使...

    java 如何打包成jar和exe.txt

    为了使Java程序能够在没有安装JDK或JRE的环境下运行,我们可以将jar文件进一步打包成exe文件。这一步通常需要借助于专门的工具。 ##### 2.1 使用j2exe4j - **安装j2exe4j**:j2exe4j是一款强大的Java应用程序打包...

    Java打包成EXE

    为了使得Java程序能够像EXE(可执行文件)那样在Windows环境下无须安装JVM就能运行,我们需要借助特定的工具将Java程序打包成EXE格式。这就是"Java打包成EXE"的主题。 1. **Java可执行化工具** 要将Java程序转换为...

Global site tag (gtag.js) - Google Analytics