文档章节

Java打包成exe工具软件exe4j

javascript1
 javascript1
发布于 2014/06/09 17:10
字数 1684
阅读 674
收藏 22
点赞 0
评论 0

exe4j是一个帮助你集成Java应用程序到Windows操作环境的java可执行文件生成工具,无论这些应用是用于服务器,还是图形用户界面(GUI)或命令行的应用程序。如果你想在任务管理器中及Windows XP分组的用户友好任务栏里以你的进程名取代java.exe的出现,那么exe4j可以完成这个工作。exe4j帮助你以一种安全的方式启动你的java应用程序,来显示本地启动画面,检测及发布合适的JRE和JDK,以及进行启动时所发生的错误处理等,以至于更多。

由exe4j建立的可执行文件具有如下特性:

  • 用户自定义的JRE/JDK检测机制
    可执行的文件能在Windows 注册表,环境变量,特定目录及系统路径中检测合适的Java JRE和 JDK。你可以完全定制搜索顺序,错误处理及所支持的 JRE/JDK版本。

  • 可选择附属JRE发布
    exe4j 允许在你的应用程序中分发私有的java实时运行库(JRE)。这种方式下你可以保证你应用程序需求确切地得到满足。你甚至还能配置JRE的存放位置。

  • 灵活的类路径配置
    java 应用程序的类路径能被完全定制为对JAR文件扫描目录,包括特定的目录路径,文档以及插入的环境变量。定制的错误处理允许你以后以特定的错误消息代替含糊的"NoClassDefFound"异常来中断启动程序。

  • 图形界面及控制台的应用程序
    exe4j 让你能在相关的终端窗口编译生成图形界面及控制台应用程序。

  • Windows服务器
    exe4j让你很容易使用Java就能创建Windows 服务。通过命令行方式进行安装/卸载/启动/停止间的切换,你可以对服务器进行完全的控制。

  • 可供选择的JAR执行文件
    exe4j让你在可执行文件中包含进JAR文件,这种方式下你可以用单个执行文件发布你的Java应用程序。

  • 自定义用户名来代替java/javaw
    exe4j创建的java应用会以此的方式运行,exe4j的执行文件名将出现在任务管理器中,而不是java.exe或javaw.exe。在windowsXP中,分组任务栏里会显示你的执行文件名及相应的图标,取代常未描述的终端图标以及字符串"javaw"。

  • 为可执行文件定制图标样式
    exe4j 可让你把指定的图标文件编译到可执行文件中,这使你的应用程序比一个批处理文件或一个可执行的JAR文件有更加显著的专业化外观。

  • 自定义工作目录
    如果需要,你可以调整工作目录为一个与可执行文件相对的特定目录。这对从任意目录调用的控制台应用程序特别有用。当处于这种方式时,你就不再需要定义很麻烦的环境变量,如MYAPP_HOME。

  • 虚拟(VM)参数文件
    对每一个可执行文件,你能创建一个用户可编辑的虚拟参数文件。如你的可执行文件名叫hello.exe,则虚拟参数文件名则叫hello.exe.vmoptions,而它里面添加的每一行将作为一个虚拟参数。

  • 版本信息资源
    exe4j能创建一个版本信息资源到你的可执行文件中。例如,这个版本信息就可以显示在Windwos 浏览器的属性对话框中。如果希望得到类似"Designed for Windows"这样的logo标识,该功能对你来说就是必须的了。

  • 本地启动画面
    对于图形用户界面(GUI)应用程序,本地启动画面通过应用程序开始几秒的中断来给用户一个应用程序启动的最佳反馈。有关应用程序启动的及版本的文本形式状态信息能自由的放置在启动画面上。在你的Java代码中,一个简单的调用就可以完成对状态信息的更新。通过激活exe4j 的"自动关闭" (auto-off)模式,本地启动画面将被隐藏,应用程序立即只显示一个窗口。

  • Redirection of stderr and stdout
    输出流及错误流能重定向到指定的文件中,这使得你能访问一些有价值的信息,例如输出在标准错误上的异常栈跟踪等,反之这些在Java的图形界面应用程序里则会被丢失。

  • 启动故障检测

    • exe4j可执行程序不再是一个闪烁的终端窗口及一个挂起的什么也不显示图形用户界面,它能监视标准错误输出文件,并显示一个含有帮助信息的本地对话框来指示启动故障。

    • 可选择强制单个应用程序的实例,及多次启动通知。如果你的应用程序必须只启动一次,那么exe4j创建的程序能强制执行该条件。如果用户第二次启动这个应用程序,现存的应用程序窗口会出现在最前面。exe4j的应用程序接口允许你注册一个监听进程,来对多重启动作出反映并接收命令行参数。

  • 执行文件的消息完全本地化
    所有执行文件的消息所采用的语言完全本地化。以这种方式,执行文件能融合到你的应用程序的本地目标中。

下载该控件请到龙博方案网http://www.fanganwang.com/product/3202














exe4j 相关文章


© 著作权归作者所有

共有 人打赏支持
javascript1
粉丝 3
博文 48
码字总数 45155
作品 0
东城
编写你的第一个HelloWorld

写在前面的话 因为Java基础是以后学习框架的基石,因此开个文集首先写写Java基础,本来想直奔基础知识的介绍,但是为了保证知识的完整性,因此从Java安装和运行“hello world”开始(虽然百度...

nanaFighting ⋅ 06/15 ⋅ 0

利用“进程注入”实现无文件复活 WebShell

  * 本文作者:rebeyond,本文属FreeBuf原创奖励计划,未经许可禁止转载   引子   上周末,一个好兄弟找我说一个很重要的目标shell丢了,这个shell之前是通过一个S2代码执行的漏洞拿到...

FreeBuf ⋅ 05/30 ⋅ 0

android -------- java虚拟机和Dalvik虚拟机

java虚拟机 虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚...

切切歆语 ⋅ 04/29 ⋅ 0

【小马哥】Spring Cloud系列讲座

这里为大家推荐一个不错的Spring Cloud系列讲座,讲师介绍如下: 小马哥,阿里巴巴技术专家,从事十余年Java EE 开发,国内微服务技术讲师。目前主要负责微服务技术推广、架构设计、基础设施...

杜琪 ⋅ 03/02 ⋅ 0

做几道基础的Java测试题,看看最近有进步吗?欢迎来学习

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互...

启示录是真的 ⋅ 05/24 ⋅ 0

gradle/Groovy语法

Groovy官网的介绍(http://www.groovy-lang.org/download.html#gvm) Gradle API 文档: https://docs.gradle.org/current/dsl/org.gradle.api.invocation.Gradle.html 深入理解Android(一)......

shareus ⋅ 04/27 ⋅ 0

Java研发大学毕业后为何找不到理想的工作

现在大学生在大学学习Java技术,毕业后直接工作,我想在大家心里这只是再平常不过的事情了,可是为啥刚一毕业的Java应聘工程师会遭到各个研发企业的拒绝,这是刚毕业的每个大学生心中的疑虑,...

我爱编程学习 ⋅ 06/07 ⋅ 0

从Java小白到架构师必须要看的书籍,真正的“武林秘籍”!

少年,我看你骨骼精奇,将是未来万中无一的IT精英,很是适合学JAVA。维护世界和平就看你的了,我这里有能让你成为IT精英的办法!还不来看看! 基础类 1、《Thinking in Java》,入门第一位是...

启示录是真的 ⋅ 05/25 ⋅ 0

SWIG与JAVA 交互最全开发指南一

项目背景 最近开始研究做移动端项目,但是本人基本是做了五六年的c++的底层研发,对C++的研发可以说是驾轻就熟了,但是对于android还是属于刚入门阶段,虽然断断续续做移动端也做了一年,但是...

揽月凡尘 ⋅ 06/16 ⋅ 0

云计算高级培训,Tomcat运维JVM 虚拟机常识

云计算高级培训,Tomcat运维JVM 虚拟机常识,作为了解JVM 虚拟机的开始。我们很有必要弄明白以下问题。 所谓虚拟机,就是一台虚拟的计算机。他是一款软件,用来执行一系列虚拟计算机指令。大...

长沙千锋 ⋅ 05/17 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 42分钟前 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 50分钟前 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 56分钟前 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

容器之查看minikue的environment——minikube的环境信息

执行如下命令 mjduan@mjduandeMacBook-Pro:~/Docker % minikube docker-envexport DOCKER_TLS_VERIFY="1"export DOCKER_HOST="tcp://192.168.99.100:2376"export DOCKER_CERT_PATH="/U......

汉斯-冯-拉特 ⋅ 昨天 ⋅ 0

mysql远程连接不上

设置了root所有hosts远程登录,可是远程登录还是失败,原因可能如下: 登录本地数据库 mysql -uroot -p123456 查询用户表 mysql> select user,host,password from mysql.user; 删除密码为空的...

冰公子 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部