Eclispe -- 打包 -- 将 Java 应用打包成 exe 应用

1、编辑清单MANIFEST.MF
    (1)Eclipse 提供了用于打包项目的“导出”向导,但本例运行此向导之前先需要创建 一个MANIFEST.MF 清单文件,其内容如下:
            Manifest-Version: 1.0
            Main-Class: book.chapter_4.wizard_dialog.WizardDialog1
            Class-Path: ./lib/swt.jar ./lib/jface.jar ./lib/runtime.jar  
                                
            其写法格式,参考  Eclipse -- 打包 -- MANIFEST.MF 规则

     (2)将清单文件保存下来,建议放在项目的根目录下。
             它的文件名可以任意取, 本例取名为manifes.txt,Eclipse 向导在打包时会自动的将manifes.txt 的内容复制到JAR 包 的META-INF 目录下的MANIFEST.MF 文件中。

2、使用Eclipse“导出”向导来打包项目
    (1)右键单击myswt 项目的项目名,在弹出菜单中选择“导出”。在弹出的如下图 所示的对话框中,选择“JAR 文件”,单击“下一步”。
      
     (2)如下图 所示,将右边不需要的文件都取消勾选。在“选择导出目标”项文本 框中设置JAR 包的输出路径和包名(可以任意取名)为“D:\myswt_application\myswt.jar”。 接受其他的默认设置不变,单击“下一步”。
            附注:左边虽然选择了src 目录,但源文件并不会导出到包中,除非勾选了“导出Java 源代码文件和资源”项。
            
     (3)如下图 所示,接受默认设置不变,单击“下一步”。
            
     (4)这一步较关键。如下图7.4 所示,选择“从工作空间中使用现有清单”项,将创 建的清单文件输入,也可以通过旁边的“浏览”按钮来选择清单文件。输入清单文件后,单 击“完成”,Eclipse 开始将项目打包。
            
         经过以上四步后,在“D:\myswt_application”路径下生成了一个名为“myswt.jar”的文 件。myswt.jar 是一个ZIP 格式的压缩文件,可以用WinRAR 或WinZip 软件打开,也就是说 用这两个软件也可以替代Eclipse 向导来打包文件。如果用WinRAR 来打包文件,则压缩格 式要选择ZIP 格式而非RAR 格式,压缩率倒可以任意选。
3、复制Java 应用程序的支持包及本地化文件
4、编写运行myswt.jar 包的批处理程序“run.bat”
        在myswt_application 目录下创建一个批处理程序run.ba(t 名字任取,扩展名必须是bat), 其内容仅一句语句,如下:
            javaw -jar myswt.jar
        说明:
             javaw 对应c:\jdk\jre\bin\javaw.exe 文件,如果windows 提示命令未发现, 则需要将c:\jdk\jre\bin 路径加入到windows 环境变量path 中。
            在运行程序的时候有一个讨厌的黑色命令行窗口,要去掉它,可以将run.bat 内容 更改如下:“start javaw -jar myswt.jar”,start 是指调用了windows 的“运行”命 令。
             如果想将swt-win32-3063.dll 也放在单独的目录中,如 “D:\myswt_application\native”目录,则需将run.bat 内容更改为:
                    start javaw -Djava.library.path=./native/ -jar myswt.jar
5、 让用户电脑不必安装JRE环境
        通常运行Java 程序有个前提条件:用户电脑必须先安装JRE 环境。虽然安装JRE 环境 非常简单,但毕竟多了一步,算是有一点点的瑕疵。这里给出一个不必让用户安装JRE 环 境的方法,其实现步骤如下:
        (1)将原JDK 中的“jre”目录复制到“D:\myswt_application\java1.4.2”目录下(java1.4.2 也可换成其他名称)。
        (2)将JDK 和JRE 从本机卸载掉,这样表示本机没有安装JAVA 运行环境。
        (3)修改批处理文件run.bat 中的命令为“start java1.4.2\jre\bin\javaw -jar myswt.jar”, 仅仅是在javaw 前加上了一个相对应路径。
          双击run.bat 即可在不安装JRE 环境的电脑运行此Java 应用程序。
6、 抛弃批处理文件(*.bat)
         用批处理文件运行程序似乎不够专业,虽然它足以完成运行任务。但习惯就象一种毒药 一旦染上就很难摆脱它的影响,Windows 统治下的人们早已经习惯运行扩展名是EXE 的程 序,用*.bat 他们就会感觉别扭。
        我们可以用一个叫JavaLauncher 的免费小程序来代替批处理文件去运行Java 程序。
        
         在上图的目录中
        source 目录包含了JavaLauncher 的源程序,是用C 语言写的
         changes.txt 是新版的修改说明
        launch.exe 是主程序
        launcher.cfg 是配置文件
        readme.txt 是一些说明和示例
        我们只需要launch.exe、launcher.cfg 两个文件,将这两个文件复制到打包文件所在的目 录。launcher.cfg 是一个仅三行内容的文本文件,将它修改如下:
            .
            .\java1.4.2\jre\bin\javaw.exe
            -jar myswt.jar
         第一行设置指向JAR 包myswt.jar 的目录,由于launch.exe 和myswt.jar 同 在一个目录,所以用“.”即当前目录。
         第二行设置指向jre\bin\javaw.exe 的路径。在上一小节(7.1.4 节)已将jre 目 录复制到了java1.4.2 子目录中。
         配置好launcher.cfg 后,双击launch.exe 即可运行java 应用程序。
        如果仔佃研究eclipse 的启动方式,发现eclipse 和JavaLauncher 的原理一样:eclipse.exe 相当于launch.exe,startup.jar 相当于myswt.jar。只不过eclipse.exe 不象launch.exe 要具有通 用性,所以它没有*.cfg 这样的配置文件,而是将启动信息固化在eclipse.exe 中。
7、美化图标
         launch.exe 文件的图标太单调了,让我们给它换个好看点的。换程序的图标需要用到一 个免费的软件:Resource Hacker
         (1)运行Resource Hacker。
        (2)单击主菜单“文件→打开”,将launch.exe 载入到程序中
                
         (3)如上图,选择左边的“图标→1→1030”,然后右键单击“1030”项,选择“替换 资源…”。如下图7.16 所示,在弹出窗口中单击“打开新图标文件”,选择一个满意的图标, 然后单击“替换”按钮。
                附注:图标文件可以是exe、dll、res、ico,该软件可以从exe、dll、res 抽取出图标,本 例选择的是java 的一个图标文件JavaCup.ico。
                
         (4)如下图 所示,选择“文件→另存为”,取名myswt.exe。
                
         (5)最后的目录如下图7.18 所示,可见myswt.exe(也就是launch.exe 改了个名称)的 图标换成了Java 的图标。双击myswt.exe 即可运行Java 应用程序。
                
8、最后的打包
        发送给用户之前,通常要用WinZip 或WinRAR 将所有的文件全部打成一个压缩包,然 后用户得到这个压缩包后,将其解压缩后即可运行程序,Eclipse 软件就是这种方式。
        另一种方式是用InstallShield、InstallAnyWhere 这样的安装程序制作软件来创建一个单一的 setup.exe 文件,它具有向导式的安装界面,而且还可以往windows 的程序栏插入菜单项, 关于这些安装程序制作软件的具体使用请参阅相关书籍。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值