zoukankan      html  css  js  c++  java
  • Java程序如何生成Jar、exe及安装文件

    FROM:http://blog.csdn.net/luoweifu/article/details/7628006

    一、用Eclipse生产Jar文件

    首先,看一下我的项目的目录结构:

    1,项目名字上面点右键,选择Export,在选择javaJAR file下一步;如下图:

    2),选择,src文件夹,.classpath.project可以去掉不选。Select the export distination(选择输出路径),下一步。

    3),去掉Export class files withcompile errors(编译错误时也输出class文件)的选项,单击下一步。

    4),在main class中选择含有main方法的类,单击finish

    5),可能会出现警告JAR export finished with warings, see details for additional information.选择OK

    6)、可能会出现的错误

    如果以上过程都能胜利完成,恭喜你,这一过程完成了,生成个jar文件成功!但是有时候在第(4)后会出现错误,如:

    此时,课通过以下方法解决:

    1检查项目下的bin文件夹下的文件是否完整打成jar包的过程实质上是将项目下bin文件夹下的文件(class文件,图片,jar包等文件)压缩成jar包。打开项目的目录结构你会发现:在src文件夹下有的文件在bin文件夹下都一个一样的副本(.java文件对应的是.class文件)。
    2)、刷新项目,选择要打包的项目,右击鼠标,选择refresh。作用是可能更改了的内容没有及时复制到bin文件夹下。
    3)、在项目的目录下,和src同级建一个META-INF文件夹,
    里面建立一个METAINF.MF
    里面指定main-class以及程序运行相关的代码,

    我写的代码是:

    Manifest-Version: 1.0

    Main-Class: execute.Structure

    Class-Path: .lib/jfreechart-1.0.1.jar lib/liquidlnf.jar lib/nimrodlf-1.0b.jar lib/substance.jar

    //导入的包的路径

    Created-By: loweifu

    在第4步中选择Use exiting manifest from workspace,如下图:

    二、使用exe4j生可执行的.exe文件

    能够生成.exe文件的软件有很多,自己去查一下,我这里只用 exe4j,先去下载一个exe4j并安装。假设你的项目已经胜利打包成jar文件,那么就可以进行下面的操作了。

    首先,在任意目录创建一个文件夹,最好命名和项目名相同,我在E盘创建了一个“DataStructure”文件夹,之后将所有的资源文件以及我们生成的可执行jar文件(我的DataStructure.jar)都拷贝到这个文件夹里, lib目录,如果你要使对方计算机在没有安装JDK的情况下也能使用该程序,就需要将自己机器上的jre目录也拷贝进来,我安装的jre6,最后的目录结构如下:

     

    1、如果你有保存过的项目打包配置文件,那么点>>open打开点击next

    2 、Project type-选择打包方式

    选择“jar in exe”

    3、 Application info-配置生成的应用程序的信息

    选择你的应用程序的名称和将要生成的可执行文件的输出文件夹。然后>>next.

    4、Executable info -配置可执行文件的参数

    如果只允许生成的exe文件同时只能打开一个程序运行,则把 “Allow only a single running instance of the application”这项的选择钩上。“Icon File”项表示生成exe文件后的图标,选择一个“.ico”格式的图片。点击next

    5、java invocation-配置运行环境

    在class path框下清除原有的class path路径,点击右侧的”+”选择打包好的jar文件

    (1)、在Archive中选择要导入的jar文件,如下图:

    点击“OK”,结果如下:

     

    (2)、在Main class中选择入口类,即含有main函数的类。

    之后点击next

    Main Class设置完成后,依次将所有需要的第三方类(即外部类)加到Class Path下,方法同添加“DataStructure.jar”一样,点击“Next”

    6、jre-配置jre以下(1)、(2)点很重要

    MinimumMaximum中分别填写所允许的最小和最大JDK的版本号。

    如果要在这个程序中捆绑jre,则进入Configure search sequence选项:

    (1)、将Search Windows registry保留,如果没有该项,请点击绿色,选择search registry,然后点击OK如下图;


    (2)再把其它的所有的directory删除,特别是如果有JAVA_HOMEJDK_HOME的话一定要删除,因为他会保存你本机的JAVA_HOME地址,安装时会出现路径找不到的错误;

    (3)、点击绿色来选择捆绑的JRE位置

    选择刚刚拷贝好的jre如:

      

    在preferred VM中选择一种-选择虚拟机类型,我选择的是 Default VM。

    7、接下来没有什么特别重要的配置了,可根据需要自己去选一些参数,也可以直接next,next,知道完成。

    8、可能出现的问题

    生成exe文件之后可能每次打开都会出现提示框:this executable was created with an evaluation version of exe4j

    这是因为你还没有注册exe4j软件,注册之后就不会有提示了。网上搜的一个注册码:L-g782dn2d-1f1yqxx1rv1sqd

    三、将自己编写的程序制作成能在Windows下安装的软件

    首先,自己去下一个Inno setup,安装很简单,就不用说了,直接根据提示安装。下载链接:http://www.crsky.com/soft/7195.html#down

    Inno Setup是一个免费 Windows安装程序制作软件,我用的是Inno Setup v5.4.3

    方法一:

    1、编辑脚本程序

    我的脚本程序如下:


    [Setup]
    AppName=数据结构演示程序
    AppVersion=1.5
    DefaultDirName={pf}DataStucture
    DefaultGroupName=DataStucture
    ;UninstallDisplayIcon={app}MyProg.exe
    OutputDir=D:java

    [Files]
    Source: "E:DataStructurejre*"; DestDir: "{app}jre"
    Source: "E:DataStructurejrein*"; DestDir: "{app}jrein"
    Source: "E:DataStructurejreinclient*"; DestDir: "{app}jreinclient"

    Source: "E:DataStructurejrelib*"; DestDir: "{app}jrelib"
    Source: "E:DataStructurejrelibaudio*"; DestDir: "{app}jrelibaudio"
    Source: "E:DataStructurejrelibcmm*"; DestDir: "{app}jrelibcmm"
    Source: "E:DataStructurejrelibdeploy*"; DestDir: "{app}jrelibdeploy"
    Source: "E:DataStructurejrelibext*"; DestDir: "{app}jrelibext"
    Source: "E:DataStructurejrelibfonts*"; DestDir: "{app}jrelibfonts"
    Source: "E:DataStructurejrelibi386*"; DestDir: "{app}jrelibi386"
    Source: "E:DataStructurejrelibim*"; DestDir: "{app}jrelibim"
    Source: "E:DataStructurejrelibimagescursors*"; DestDir: "{app}jrelibimagescursors" 
    Source: "E:DataStructurejrelibmanagement*"; DestDir: "{app}jrelibmanagement"
    Source: "E:DataStructurejrelibsecurity*"; DestDir: "{app}jrelibsecurity"


    Source: "E:DataStructurejrelibzi*"; DestDir: "{app}jrelibzi"
    Source: "E:DataStructurejrelibziAfrica*"; DestDir: "{app}jrelibziAfrica"

    Source: "E:DataStructurelib*"; DestDir: "{app}lib"
    Source: "E:DataStructureDataStructure.exe"; DestDir: "{app}";
                                                                                      
    [Icons]
    Name: "{group}DataStructure"; Filename: "{app}DataStructure.exe"

     

    接下来稍微解释一下:

     [Setup这个段包含用于安装程序和卸载程序的全局设置。

    AppName(要安装的)程序名称

    AppVersion程序版本号

    DefaultDirName安装时默认的文件夹

    DefaultGroupName快捷菜单或开始菜单的默认文件夹

    OutputDir安装程序的输出路径

     

    [Files]这是定义安装程序安装文件到用户系统中的可选文件段。

    Source资源文件

    DestDir文件安装到用户系统中的目录。

    [Icons]这个可选段定义所有创建在开始菜单和/或其它位置 (比如桌面)的快捷方式。

    Name要创建的快捷方式的名字和位置。

    Filename捷方式的命令行文件名,通常用一个目录常量开头。

     

    2、编译

    编辑好脚本程序之后选择“构建”“编译”完成后即可。

     方法二:

    选择"文件"/"新建",打开''Inno Setup脚本向导"创建新的脚本文件。

       

    根据提示一步一步来,这个很单间,我就不多说了。


  • 相关阅读:
    中国省市区县最新数据表
    Android基础之退出键及menu不能使用
    对Hello China操作系统比较客观的评价
    对操作系统开发相关的一些问题的思考
    2010年9月12日周日_Builing your first mobile application_1.3
    2010年9月13日周一_WorkingWithSpatialReferences_6.2
    2010年9月04日_周六_Mobile Developmnet Environmnet_1
    2010年9月05日_周日_DeveloperEnvironmentRequirements_1.1
    2010年9月02日周四_Deploying to Mobile Devices_4.2
    2010年9月16日周四_Working with geometry_6.3
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299059.html
Copyright © 2011-2022 走看看