使用JSmooth将java程序打包为exe文件

       前提:若使用eclipse开发java项目,项目完成后,可以将该项目导出,但导出项目是以jar文件形式存在。jar文件可以打开运行,但前提是电脑中必须安装有jdk(或者只有jre运行环境也行),若没有安装jdk,则不能运行jar文件。

       编写项目的目的:是让普通用户使用。开发人员的电脑中是有jdk的,可以开发java项目并运行jar文件。但普通用户并不需要安装jdk,大家都知道,普通用户下载软件后,都是打开该软件的.exe程序(可执行文件)运行程序,并不需要下载额外的运行环境(安装jdk)。

      因此,这篇文章就是讲如何将java项目打包成exe文件,让普通用户都可以下载后直接运行使用。

        该文章分为两部分:1.将java项目在eclipse中导出为jar文件   2. 利用JSmooth工具将jar文件打包成exe文件

        在进行这两步骤之前,还需做一些准备工作准备工作第一步:首先新建一个空的文件夹(我在此新建一个名称为Robot文件夹)

使用JSmooth将java程序打包为exe文件

        准备工作第二步:然后在该文件夹里面放一张图片(该图片是最后生成exe文件的图标),还要放jre文件夹(安装jdk,jdk文件夹里面有一个jre文件夹,将jre文件夹复制,粘贴到Robot文件夹中)。

使用JSmooth将java程序打包为exe文件

                                                         图一

      完成准备工作后,接下来就可以进行上面的两大步骤

一:将java项目在eclipse中导出为jar文件 

    1.  需要说一下:将java项目导出,并不是以eclipse中新建的java项目为单位导出的,而是以主函数(main方法)为单位导出的。因为主函数是一个程序的入口,一个主函数代表一个可以运行的java程序。(注意:这里导出的java项目并不是指eclipse中新建的java项目,而是指一个可以单独执行的程序。因此,在一个新建的java项目中,可以导出多个jar包,因为,一个新建的java项目中可以有多个main方法)。

   右键单击java项目(指eclipse中新建的java项目),然后在出现的选项中选择导出。之后出现下图,然后选择图中java文件夹下的可运行的JAR文件,选择好后,点击下一步。

使用JSmooth将java程序打包为exe文件

                                                          图二

     2. 点击下一步后,如下图所示。该图中有两个地方需要配置,1.启动配置,在这里选择你需要导出程序的main方法所在的类(即主类)。如下图:我的main方法在Robot这个项目中的ChatFrame类中,因此在后面的下拉框中选择这个就行了。

使用JSmooth将java程序打包为exe文件

                                                   图三

    3. 在上面的图片中,选择完需要导出程序的主类后,接下来选择"导出目标"。注意:导出jar文件的位置并不是随便放,而要放置在准备工作中创建的文件夹中(与jre放在一起)。如:上图中我选择的是准备工作中创建的Robot文件夹中。

     选择Robot文件夹后,可以给导出的jar文件夹起名字,如下图,我起名字的还是Robot.jar文件。

使用JSmooth将java程序打包为exe文件

                                                                             图四

       4. 在图四中,给jar文件起好名字后,点击保存,如上面图二一致。点击完成。现在再查看准备工作时创建的文件夹(这里是Robot文件夹),此时发现,在该文件夹中多了一个名称为Robot的jar文件。

使用JSmooth将java程序打包为exe文件

                                                                                 图五

二: 利用JSmooth工具将jar文件打包成exe文件

JSmooth 是开源的 Java EXE 启动文件生成程序, 可以制作 Windows, DOS 和 服务包装器. 官方网站:http://jsmooth.sourceforge.net/

     1.  首先,打开JSmooth工具,主界面如下图所示:

使用JSmooth将java程序打包为exe文件

                                                                                           图六

   2.  选择左侧菜单栏中的第二项:Skeleton(骨架),之后选择右边的Windowed   Wrapper选项。出现如下图所示:

使用JSmooth将java程序打包为exe文件

                                                                                           图七

3.  选择左侧菜单栏中的第三项:Executable(可执行文件)。

使用JSmooth将java程序打包为exe文件

                                                                                             图八

执行完图八内容的内容后,注意在图八中的第2步,给文件起名称时,要加上.exe后缀名。如下面图九所示为:Robot.exe。

使用JSmooth将java程序打包为exe文件

                                                                                   图九

 4. 选择左侧菜单栏中的第四项:Application(应用程序)

使用JSmooth将java程序打包为exe文件

                                                                                                           图十

  图十中,第3步中,选择前面生成的jar文件,选择完后,才能执行第4步,选择这个jar包中的主类。选择完后,如下图:

使用JSmooth将java程序打包为exe文件

                                                                                           图十一

  5. 选择左侧菜单栏中的第五项:JVM Select(JVM选择)。

使用JSmooth将java程序打包为exe文件

                                                                                           图十二

在上图中,第3步选择之前复制到Robot文件夹中的jre文件夹的路径。

使用JSmooth将java程序打包为exe文件

                                                                                    图十三

6. 最后一步,选择上面菜单栏中的Project选项,单击Project选项,选择其下的Compile。然后选择生成的exe文件的位置。

使用JSmooth将java程序打包为exe文件

                                                                                         图十四

选择生成exe文件的位置时,在此,我将exe文件生成到上面的Robot文件夹中,并给exe文件起名为Robot,同样,该名称与图九所起名称应相同,也为Robot.exe,注意也要有.exe后缀名

使用JSmooth将java程序打包为exe文件

                                                                                                       图十五

选择后,点击保存,就在上面的Robot文件夹中生成Robot.exe的可执行文件。

使用JSmooth将java程序打包为exe文件

 

到此为止,就完成了将java项目打包成exe文件。

注意:这时若想将文件发送给普通用户(没有安装jre或jdk的用户)使用,不能只将exe文件发给用户,而是要将整个Robot文件夹发给用户,这样普通用户下载这个文件夹后,点击文件夹里的exe文件才可以使用。