工具:eclipse,exe4j,jre,这三个都可以直接在官方网站下载,下面所用到的都是最新版的。

前期准备:用eclipse编好需要生成.exe文件的project,另外exe4j需要一个注册码,不然每次使用生成的.exe文件都会有提示框,印象中是在给自己打广告,这程序是exe4j做的巴拉巴拉,可以在官网上购买,还挺贵的,400多?不过没有必要下载破解版,exe4j和当初的winxp都有几个可以无限使用的注册码(听说这是公司为了推广自己的产品故意放出来的,我没经历过xp的年代,第一台电脑是vista系统,属于道听途说)。也不用感觉没花钱特别良心上过不去。这里给出一个:A-XVK258563F-1p4lv7mg7sav

填注册码的位置按钮大概就在画圈的地方,没填的时候会有个License按钮,Name和Company随便填。

现在第一件事情就是生成jar包,在eclipse上选中想要生成.exe文件的project,右键单击,选择Exprot,弹出Exprot任务框,选择Runnable JAR file ,next。JAR file 和 Runnable JAR file的区别可以参考:http://blog.csdn.net/lijiecong/article/details/6266234  。接下来弹出Runnable JAR File Exprot 任务框,Launch configuration 选择自己的主类,Exprot destination 中选择输出地址。其他都是可选项根据自己的需要操作,也可以直接next。成功后就可以直接关了eclipse了,可以运行一下jar包,看下是否正确。说一下-c 20是我的程序所需要的相关参数。具体操作如下

然后准备好jre接下来用得到:特别说明下jre一定要和生成的.exe文件放在同一个文件夹里

现在就可以开始利用exe4j生成.exe的可执行文件:

welcome界面要输入注册码的输入注册码,不然直接next。

Choose project type界面选择 JAR in EXE mode,没什么好说的,刚刚一直做的就是生成jar包。

到了Configure application输入short name of your application(Short name (短名称),这项会在面板里显示出来,填的内容越少越好,多于8个字符或4个中文,就会显示不全。--有道) ,以及选择Ouput directory,生成.exe文件所在的位置。

Configure executable 界面,Executable type要根据自己的情况选择,我的是控制台输入选择Console application,输入Executable name(可执行文件名),其他是可选项,提一下,貌似Icon File只能接受.icon类型的图片

接下来如果是在64位的虚拟机运行的程序,Generate 64-bit executable记得打勾

再接下来导入jar包,点击右边的+号按钮,Entry Type选择Archive,Detail 找到jar包,选中,next。选完后要记得选择选择main方法。Arguments for main class 可选,传递给main方法的参数。

选择jre版本,没什么好说的。

最重要的一步导入jre,才能使.exe运行在没有java环境的电脑下。选择玩JRE版本后exe4j会直接跳到Splash screen,这时候要点击JRE,再点击Search sequence,导入的方法和导入jar包差不多,记得Entry Type选择Directory.

这里我选择Client hotspot VM 具体可以参考另一位大神的文章:http://blog.csdn.net/h002399/article/details/46964569

然后如果是没有特殊要求的程序就可以一路next了。

最后结果加执行。

但是现在还不是我需要的结果,我需要在没有java环境下运行:我先卸载了jdk(丧心病狂),下图是我现在电脑里的程序,继续运行生成的.exe文件,完美运行。

继续提问,exe不要和jre在一个目录下可以单独运行吗?答案是不行。

好了,关于java生成可执行文件暂时就到这里。该去睡觉了,明天还得重装jdk。

java--利用exe4j生成.exe的可执行文件的更多相关文章

  1. java应用程序利用Exe4j打包exe文件

    1.      使用简介: 把java应用程序打成exe文件我们可以借助第三方软件exe4j来完成.Exe4j大家可以在网上下载,下载地址是: http://www.ej-technologies.c ...

  2. 如何解决exe4j生成exe文件后弹出提示信息

    使用exe4j生成exe文件时会提示以上一段信息,这个主要是没有注册导致的,在welcome to exe4j的右下角有一个注册信息的地方,去找个注册码,就OK了. 通用注册码:L-g782dn2d- ...

  3. Java利用poi生成word(包含插入图片,动态表格,行合并)

    转(小改): Java利用poi生成word(包含插入图片,动态表格,行合并) 2018年12月20日 09:06:51 wjw_11093010 阅读数:70 Java利用poi生成word(包含插 ...

  4. Java利用Zxing生成二维码

    Zxing是Google提供的关于条码(一维码.二维码)的解析工具,提供了二维码的生成与解析的方法,现在我简单介绍一下使用Java利用Zxing生成与解析二维码 1.二维码的生成 1.1 将Zxing ...

  5. windows文本转语音 通过java 调用python 生成exe可执行文件一条龙

    我已记不清 我失败过多少次 ,找过多少资料 ,但是功夫不负有心人 ,还是成功了. 所有资料和需要的语音模块的资料以放置在文章末尾, 有些是引用别人的博客的部分内容, 原文是在有道云笔记,所以没有图,请 ...

  6. java调用matlab生成exe文件

    一.Matlab生成Java Package 1.在MATLAB的Command Window输入deploytool命令,选择Library Compiler. 2.在弹出的窗口选择Java Pac ...

  7. 利用pyinstaller生成exe文件碰到的一些问题及解决方法

    在“开源图像标注工具labelme的安装使用及汉化”这篇博客中,使用pyinstaller将labelme项目的入口python文件main.py打包,生成了main.exe文件,可以在Windows ...

  8. 利用pyinstaller生成exe之后,运行不能正常产生结果文件问题记录

    https://segmentfault.com/q/1010000011284617/a-1020000011493026 在此链接已解决问题,现在在这里在详细记录一次 问题描述: 利用pychar ...

  9. Java利用模板生成pdf并导出

    1.准备工作 (1)Adobe Acrobat pro软件:用来制作导出模板 (2)itext的jar包 2.开始制作pdf模板 (1)先用word做出模板界面 (2)文件另存为pdf格式文件 (3) ...

随机推荐

  1. 突然兴起复习一下Swift3.0

    /// 参考Swift3.0.1文档 /// 摘录来自: Apple Inc. "The Swift Programming Language (Swift 3.0.1)". iB ...

  2. String、StringBuffer与StringBuilder

    String.StringBuffer与StringBuilder之间区别 最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBui ...

  3. JMeter元件的作用域和执行顺序

    元件的作用域 配置元件:会影响其作用范围内的所有元件,作用范围是最大的,只要创建就对所有元件起作用. 前置处理器:在其作用范围内的每一个Sample元件之前执行: 定时器:对其作用范围内的每一个Sam ...

  4. javascript DOM 笔记

    以下内容来自<javasript DOM 编程艺术>第二版 dom中三种重要的节点:元素节点.属性节点.文本节点. 几种节点的重要属性:nodeValue,nodeType(为数字1.2. ...

  5. Random问题

    Unity添加C#脚本,打不出来Random.Next,原因是Random自动引用了UnityEngine命名空间,在使用Random的时候要要这么写:System.Random ran=new Ra ...

  6. G++与VS2015在变量作用域上的差异性

    前段时间,发现同一段C++代码在windows .Linux下的运行结果居然不一样,于是测试了一把. 我们都知道,C++中不同作用域中不同的变量是互不干扰的,可以在全局作用域.函数作用域声明同样名字的 ...

  7. 80C51 K1控制D1发光

    #include "reg52.h" typedef unsigned char u8; typedef unsigned int u16; sbit led = P2^0; sb ...

  8. Yii2 关于yii\db\Connection::open耗时很久的问题(1000ms左右)

    关于这个问题我纠结了很久,每次打开网页yii\db\Connection::open几乎都耗时1000ms. 其实这个问题很好解决:只要把config\db.php配置信息里的localhost,改成 ...

  9. Nginx入门案例(Mac版)

    Nginx(engine x)是一个轻量级.高性能的Web和反向代理服务器,也是一个IMAP.POP3和SMTP服务器,并且安装十分简单,配置文件非常简洁,启动特别容易,运行十分稳定,几乎可以做到7* ...

  10. Javaweb向服务器上传文件以及从服务器下载文件的方法

    先导入jar包 点击下载 commons-fileupload是Apache开发的一款专门用来处理上传的工具,它的作用就是可以从request对象中解析出,用户发送的请求参数和上传文件的流. comm ...