java应用编写测试好之后都是jar包或class文件,客户拿到这个东西后一般是不会java开发者那样在命令窗口下面输入运行的。客户要求的就是直接点击应用名称运行。java在方面做得很不友好,开发人员要么写一个批处理文件来调用jar包中的主要main class运行,要么必须使用第三方软件来打包。今天我就来介绍使用fatjar(eclipse插件)和exe4j来打包成为exe。为什么要fatjar来打包呢,eclipse不是自带打包jar吗?似的,没有错,但是eclipse带东西,打包出来经常没有把你工程之外依赖class jar包没有打进来,打出来的exe就没有办法运行。有了这个fatjar,这个东西可以帮你把所有的依赖包一个不漏打进去,这样exe就可以运行了。

1.运行打开eclipse,找到已经编写好的java项目,右键点击项目,弹出如下菜单选择"build fat jar":

2.输入要jar名称,点击“browser”找到main class

3.这里找到所有的依赖包,下一步下一步就可以打出来一个jar包了。

4.运行exe4j:

5.选择正常模式:

6.输入打包生成的exe名称以及输出文件夹:

7.点击classpath找到我们刚才使用fatjar打出来的包,系统自动帮你找到main class.如果有需要你可以输入

应用运行虚拟机参数。

8.在这里找到您的jar包。

9.这是我打包出来的东西:

10.看看我点击这个myexeJdk.exe运行,任务管理器里面就存在这个进程了,呵呵。看到没有

myexeJdk.exe

注意:用exe4j将jar打成exe文件后,运行是总会先弹出exe4j的对话框,能把它去掉吗?

答:这说明你的Exe4j没有注册,我的就没有这问题。注册码:A-XVK265381F-w8v2yf113uk7o ,点击welcome界面的change lience,填写注册码即可

使用fat jar和exe4j把java程序打包成exe执行文件---转载的的更多相关文章

  1. JAVA程序打包成exe文件详细图解

    我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同.其实将java程序打包成exe也需要这个可执行jar文件. 准备: eclipse ...

  2. Java程序打包成exe可执行文件

    前言: 我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同.其实将java程序打包成exe也需要这个可执行jar文件. 准备: ecl ...

  3. Javaweb程序打包或exe执行文件

    java程序的打包与发布 这里主要是讲解一下怎样将 Java程序打包成独立运行的exe程序包,以下这种方法应该是最佳的解决方案了.NetDuke的EXE程序包了是使用这种方案制作的.在操作步骤上还是比 ...

  4. JAVA程序打包成exe小程序的过程

    编程软件:myeclipse2014 打包exe软件:exe4j 1:在myeclipse2014新建java项目编写程序 2:打包成jar,分两种情况(有无外部依赖包) 无外部依赖包:点击项目--- ...

  5. 将Java程序打包成可执行EXE文件的步骤

    需要的工具myeclipse .jar2exe(附上下载地址,直接解压就可以用链接: https://pan.baidu.com/s/1qYPRgXu 密码: wbva) 1.将Java项目导出成.j ...

  6. 使用WinRAR创建可执行程序(例如:Java程序打包 成exe)

    不管你是java.c.还是xx程序,只要打包成可以双击运行/或者命令行运行,都可以用WinRAR软件生成压缩格式的exe文件,目标电脑可以没安装解压软件,依然可以运行解压. 第一步:准备压缩的所有文件 ...

  7. 将java程序打包成exe文件

    一. 1. 项目右击,导出 jar文件 2. 下一步,选择 3. 完成 二. 1. 下载exe4j,并破解 2. 其他的步骤都好说,我主说这个步骤,一定要讲所有引用的jar包放到里面否则会报找不到文件 ...

  8. 把java程序打包成.exe

    准备工作:将可执行的jar包跟资源跟第三方包都放到一个目录下. 能够将jre包也放入里面.这样在没有安装jre的情况下也能够执行. watermark/2/text/aHR0cDovL2Jsb2cuY ...

  9. Java桌面程序打包成exe可执行文件

    前言: 我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同.其实将java程序打包成exe也需要这个可执行jar文件. 准备: ecl ...

随机推荐

  1. ComponentName的意思

    ComponentName是用来打开其它应用程序中的Activity或服务的. 使用方法: Intent i=new Intent(); i.setComponent(new ComponentNam ...

  2. Swift Strings and Characters

    String 是一个有序的字符集合,例如 "hello, world", "albatross".Swift 字符串通过 String 类型来表示,也可以表示为 ...

  3. HexColor

    // // HexColor.swift // HexColor // // Created by Tuomas Artman on 1.9.2014. // Copyright (c) 2014 T ...

  4. CSS入门教程——定位(positon)

    CSS入门教程——定位(positon) CSS定位在网页布局中是起着决定性作用.   定位 CSS的定位功能是很强大的,利用它你可以做出各种各样的网页布局.本节就介绍一些CSS常用的定位语句. 1. ...

  5. 将mysql服务加入到系统服务中 服务器配置 注销时不会关闭mysql

    将mysql加入系统服务中: 或者在cmd中输入:mysql安装路径\mysql\bin\mydqld.exe --install mysql --defaults-file="mysql安 ...

  6. JS时间戳与日期类型格式相互转换

    function datetime_to_unix(datetime){     var tmp_datetime = datetime.replace(/:/g,'-');     tmp_date ...

  7. HDU 2458 - Kindergarten

    有一堆男孩和女孩,男孩和男孩之间,女孩和女孩之间互相认识,给出一堆男孩女孩之间认识的关系, 问一个组里最多多少人相互都认识 那么 二分图里 将不认识的连线 那么 相互认识的人最多 就为 最大独立点集 ...

  8. USACO 1.3... 虫洞 解题报告(搜索+强大剪枝+模拟)

    这题可真是又让我找到了八数码的感觉...哈哈. 首先,第一次见题,没有思路,第二次看题,感觉是搜索,就这样写下来了. 这题我几乎是一个点一个点改对的(至于为什么是这样,后面给你看一个神奇的东西),让我 ...

  9. J - A + B Problem II(第二季水)

    Description I have a very simple problem for you. Given two integers A and B, your job is to calcula ...

  10. 从汇编看c++多重继承中this指针的变化

    先来看一下下面的c++源码: #include <iostream> using namespace std; class X { public: virtual void print1( ...