- 浏览: 576100 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (411)
- webservice (3)
- oracle (37)
- sqlserver (8)
- j2ee (56)
- linux (7)
- javaweb (47)
- office (1)
- struts (23)
- hibernate (11)
- spring (29)
- 网络 (2)
- tomcat (13)
- tongweb (0)
- weblogic (0)
- powerdesiginer (3)
- svn (3)
- js (20)
- ie (2)
- 编译 (3)
- css (2)
- 操作系统 (5)
- Android (41)
- jbpm4.3 (1)
- fckeditor (3)
- 操作excel (2)
- db2常用命令 (1)
- ibatis (5)
- mysql (16)
- 表达式语言 (1)
- java方式调用存储过程 (1)
- ca (1)
- linux客户端 (1)
- 电子数码 (1)
- 行业应用 (12)
- 开发工具 (4)
- 面试 (1)
- 计算机原理 (1)
- NOSQL (5)
- 虚拟机 (1)
- nginx (0)
- velocity (2)
- jndi (1)
- spring mvc (39)
- springmvc (32)
- 安全 (5)
- htmleditor (6)
- iphone4 (1)
- html (4)
- jstl (2)
- ckeditor (5)
- 连接池 (1)
- jquery (6)
- 分页 (1)
- 技术研发规则 (1)
- javamail (1)
- maven (2)
- upload (1)
- log (1)
- 测试 (10)
- spring roo (1)
- 版本控制 (2)
- find bugs (0)
- jsf (0)
- springroo (0)
- 小道理 (1)
- 小道理,技术标准 (1)
- jsf (0)
- bitbao (2)
- redmine (3)
- 团队意识 (1)
- mybatis (2)
- jquery mobile (1)
- flexpaper (0)
- json (4)
- URLRewriteFilte (1)
- html5 (1)
- 都乐保活动 (0)
- openfire (0)
- TreeMap (1)
- build (0)
- javaweb,tag (0)
- algorithm (1)
- tag (2)
- 扯淡 (0)
- mac (2)
- 叶一火(老一) (1)
- 游玩 (1)
- 编码 (1)
- 上线部署 (0)
- 研发管理 (0)
- thumbnailator (2)
- 旅游 (0)
- bingweibo (1)
- 杂谈 (4)
- ktv (1)
- weibo (1)
- 爱情 (2)
- 饮食 (1)
- MediaWiki (1)
- git (1)
- 版本库 (1)
- servlet (1)
- 感悟 (1)
- 人生 (1)
- highcharts (1)
- poi (0)
- websphere (0)
- php (1)
最新评论
-
woshixushigang:
good
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
nathanleewei:
org.springframework.jdbc.core.B ...
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
浪禾木:
请问是ckeditor\contents.css吗?改过以后 ...
ckeditor自动换行问题 -
simusuishi:
刚哥威武!
ckeditor取值赋值问题 -
a455642158:
收割完毕……
Android开源项目源码下载(不断更新中)
这里主要是讲解一下怎样将 Java程序打包成独立运行的exe程序包,以下这种方法应该是最佳的解决方案了。NetDuke的EXE程序包了是使用这种方案制作的。在操作步骤上还是比较简单的,而且通用性强。
1.程序打包
首先将程序打成Jar包,打包命令:jar cf 包文件名.jar *.class。接下来编译包中的清单文件MANIFEST.MF 。
Manifest-Version - 指定清单文件的版本号
Main-Class - 指定程序运行的入口类。注意:类名后不要加class扩展名
2.让用户电脑不必安装JRE环境
通常运行Java程序有个前提条件:用户电脑必须先安装JRE环境。虽然安装JRE环境非常简单,但毕竟多了一步,算是有一点点的瑕疵。这里给出一个不必让用户安装JRE环境的方法,其实现步骤如下:
(1)将原JDK中的“jre”目录复制到“D:\项目文件夹\java1.4.2”目录下(java1.4.2也可换成其他名称)。
(2)将JDK和JRE从本机卸载掉,这样表示本机没有安装JAVA运行环境。
(3)修改批处理文件run.bat中的命令为“start java1.4.2\jre\bin\javaw -jar NetDuke.jar”,仅仅是在javaw前加上了一个相对应路径。
双击run.bat即可在不安装JRE环境的电脑运行此Java应用程序。
3.更进一步的完善
1、抛弃批处理文件(*.bat)
用批处理文件运行程序似乎不够专业,虽然它足以完成运行任务。但习惯就象一种毒药一旦染上就很难摆脱它的影响,Windows统治下的人们早已经习惯运行扩展名是EXE的程序,用*.bat他们就会感觉别扭。
我们可以用一个叫JavaLauncher的免费小程序来代替批处理文件去运行Java程序。JavaLauncher的下载网址是:http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm
下载下来的文件是一个名JavaLauncher.zip的压缩包,解压后的目录结构如下:
1.source目录包含了JavaLauncher的源程序,是用C语言写的
2.changes.txt是新版的修改说明
3. launch.exe是主程序
4. launcher.cfg是配置文件
5.readme.txt是一些说明和示例
我们只需要launch.exe、launcher.cfg两个文件,将这两个文件复制到打包文件所在的目录。launcher.cfg是一个仅三行内容的文本文件,将它修改如下:
.
.\java1.4.2\jre\bin\javaw.exe
-jar NetDuke.jar
第一行设置指向JAR包NetDuke.jar的目录,由于launch.exe和NetDuke.jar同在一个目录,所以用“.”即当前目录。
第二行设置指向jre\bin\javaw.exe的路径。要先将jre目录复制到了java1.4.2子目录中
配置好launcher.cfg后,双击launch.exe即可运行java应用程序。
如果仔佃研究eclipse的启动方式,发现eclipse和JavaLauncher的原理一样:eclipse.exe相当于launch.exe,startup.jar相当于NetDuke.jar。只不过eclipse.exe不象launch.exe要具有通用性,所以它没有*.cfg这样的配置文件,而是将启动信息固化在eclipse.exe中。
4.美化图标
launch.exe文件的图标太单调了,让我们给它换个好看点的。换程序的图标需要用到一个免费的软件:Resource Hacker,它有中文版,下载网址是:
http://www.users.on.net/johnson/resourcehacker/
用Resource Hacker来替换launch.exe的图标的步骤如下:
(1)运行Resource Hacker。
(2)单击主菜单“文件→打开”,将launch.exe载入到程序中。
(3)选择左边的“图标→1→1030”,然后右键单击“1030”项,选择“替换资源…”。然后在弹出窗口中单击“打开新图标文件”,选择一个满意的图标,然后单击“替换”按钮。
附注:图标文件可以是exe、dll、res、ico,该软件可以从exe、dll、res抽取出图标,本例选择的是Java的吉祥物Duke.ico。
(4)选择“文件→另存为”,取名NetDuke.exe。
附注:按理说选择“保存”也是可以的,这时Resource Hacker会将老的launch.exe备份成launch_original.exe。但也许是刷新上有问题,用“保存”方式有时launch.exe无法显示出新图标,但有时又可以。
(5)最后的目录如下所示,可见NetDuke.exe(也就是launch.exe改了个名称)的图标换成了Java的图标。双击NetDuke.exe即可运行Java应用程序。
1.java1.4.2(文件夹)
2.launcher.cfg
3.NetDuke.exe
4.NetDuke.jar
5.最后的打包
发送给用户之前,通常要用WinZip或WinRAR将所有的文件全部打成一个压缩包,然后用户得到这个压缩包后,将其解压缩后即可运行程序,Eclipse软件就是这种方式。
另外大家要注意的几点:
(1)Java应用程序中用到的资源,它都必须要求写绝对路径,否则在其它机子上就会出现找不到资源。所以一般我们在写程序时就要注意一定要用绝对路径,例如:Toolkit.getDefaultToolkit().getImage(getClass().getResource("文件名")));像这种写法就一定没问题。当然如果要将资源传递给构造器的话就没办法了,例如:NetDuke frame = new NetDuke("资源");这是我们就须要将资源拷贝到项目文件夹下一起打包。
(2)一般我们的Jre都有60多M,这样和程序一起打包就显得很臃肿。所以要将Jre适当地减肥,具体的作法这样不再累赘,大家在一台还没装JRE的机上测试,将JRE中的一个个文件删除后程序是否可正常运行。还有一个就是rt.jar这个Java类库也要大量的砍伐。
通过以上的操作即可得到使大家满意的一个exe程序包,而不用借助其它软件。希望对大家有帮助。
发表评论
-
日期比较
2013-06-13 16:21 1165比较日期: function compareDate( ... -
Arrays.asList详解
2012-09-10 09:52 885Arrays.asList详解 记得以前写过一 ... -
Collections.addAll
2012-09-07 18:04 2324collections用法以及list 简单实例 Colle ... -
string
2012-09-06 17:20 886String a = "ab"; ... -
图片复制
2012-07-05 11:53 1065import java.io.File;import java ... -
thumbnailator 图片缩放
2012-07-04 20:10 1373Thumbnailator是一个用来生成图像缩略图的 J ... -
java File
2012-06-29 13:53 1268直接下载的,整理的很好,这里做个记录,基础的东西都是。 Fi ... -
mysql 时间比较
2012-06-05 19:57 1弱智得问题,分开写 SELECT * FROM bb_ ... -
split
2012-05-23 10:46 1196//String[] idArr = StringUtil ... -
(转)关于Integer大小比较的问题
2012-05-18 10:32 871关于Integer大小比较的问题 昨天跟朋友一起 ... -
toString
2012-05-14 20:01 998public abstract class ToStringB ... -
io读取操作
2012-03-09 16:18 955public void writeFile(Strin ... -
string[] to map
2012-03-03 17:23 1079public static Map<Inte ... -
tomcat中文问题的解决
2012-03-01 09:55 854第一,存文件必须以一种编码存;读文件也必须以一种编码读,如不特 ... -
java方式将汉字转成拼音
2012-02-24 13:02 1058/** * 需要一个开源的jar包pinyin4j-2.5. ... -
System.getProperty(key)
2012-02-15 15:08 1014public static void main(String ... -
CodeFilter
2012-05-22 11:14 834package com.bitbao.cm.common.ut ... -
Integer值比较误区
2012-05-22 11:14 926例子: Integer i1 = 12; I ... -
容易忽略的for循环问题
2012-01-18 15:33 11711、项目中对用户操作的结果进行审核时候,出现一个问题,如果对省 ... -
java实现的加密工具类(支持MD5和SHA)
2012-01-13 16:08 1266版权声明: dtstudy原创文章,转载请注明出处: h ...
相关推荐
1. **为什么需要将Java程序打包成.exe**: - 用户友好:大多数Windows用户对.exe文件更熟悉,无需安装JRE即可运行。 - 环境独立性:打包成.exe可降低依赖性,避免因缺少JRE导致的运行问题。 - 部署简化:单个.exe...
**核心概念:** 在将Java程序打包成EXE文件之前,通常需要先将其打包成一个独立的JAR文件。这样做有助于简化后续的打包流程,并确保所有必要的类和资源都被正确包含。 **工具推荐:** `fatJar` 插件是Eclipse用户的一...
在Java开发过程中,将程序打包成可执行的...通过以上步骤,我们可以将Java程序打包成jar或exe文件,方便用户下载和运行,同时也提高了软件的分发效率。在实际操作中,根据项目需求选择合适的打包工具和策略至关重要。
2. **Exe4j 工具**:这是一个专门用于将 Java 应用程序打包成 EXE 文件的工具,通常需要获取软件和授权账号,可以通过网络进行下载。 #### 三、步骤详解 ##### 1. 将 Java 项目打包成可执行 JAR 文件 **目的**:...
总之,将Java程序打包成`.exe`文件,可以提升用户的使用体验,简化部署过程,但同时也需要处理好与Java环境的关联、错误处理和平台兼容性等问题。使用适当的工具和正确的配置,可以有效地完成这一转换。
标题中的“java程序打包成exe文件”指的是将Java编写的程序转换为Windows操作系统下的可执行文件(.exe),这样非Java环境的用户也能直接运行,无需先安装Java运行环境(JRE)。这个过程通常借助第三方工具来实现,...
Java程序通常以`.jar`...通过以上步骤,你可以将Java程序打包成`.exe`文件,使得非Java用户也能轻松运行你的程序。但要注意,这种方式可能牺牲了一些Java的灵活性和跨平台性,因此在选择打包工具和设置时需谨慎考虑。
Java程序打包成exe是将Java应用程序转换为Windows操作系统下的可执行文件(.exe)的过程,这样非Java环境的用户也能直接运行程序。这通常通过特定的工具实现,比如提到的exe4j。exe4j是一个专门用于Java应用程序打包...
在Java编程中,将程序打包成JAR文件是常见的部署方式,这使得代码可以作为一个独立的可执行单元进行分发。然而,在打包包含数据库连接的Java应用程序时,可能会遇到一些问题,尤其是涉及到像MySQL这样的外部数据库。...
- 也可以使用JavaFX的打包工具将应用程序打包成可独立运行的可执行文件,适用于多个平台。 9. **持续集成与发布**: - 对于持续集成和自动化发布流程,可以集成这些打包工具到构建脚本(如Maven或Gradle)中,...
### JAVA程序打包成EXE文件知识点详解 #### 一、背景与需求分析 在软件开发领域,特别是使用Java语言进行跨平台应用开发时,开发者常常会遇到如何将编写的Java程序打包成可以在不同操作系统上直接运行的应用程序的...
总结,将Java Swing应用程序打包成.exe是一项重要的部署步骤,通过选用合适的打包工具,如Launch4j或JSmooth,结合详细的使用说明文档,开发者可以轻松完成这一过程,使得Java Swing应用能在Windows环境中无缝运行。
总的来说,将Java程序打包成EXE文件是一项实用的技术,可以方便非Java开发者或普通用户运行你的程序。使用上述提到的工具,你可以轻松实现这一目标,同时定制化你的程序外观和运行环境。不过,要注意的是,生成的EXE...
2. **exe4j**:exe4j是由IntelliJ IDEA的开发者JetBrains开发的一款软件,它允许Java开发者将Java应用程序打包成Windows上的.exe可执行文件。exe4j不仅可以创建独立的可执行文件,还可以生成启动脚本和安装程序,使...
为了使Java程序能够在没有安装JDK或JRE的环境下运行,我们可以将jar文件进一步打包成exe文件。这一步通常需要借助于专门的工具。 ##### 2.1 使用j2exe4j - **安装j2exe4j**:j2exe4j是一款强大的Java应用程序打包...
为了使得Java程序能够像EXE(可执行文件)那样在Windows环境下无须安装JVM就能运行,我们需要借助特定的工具将Java程序打包成EXE格式。这就是"Java打包成EXE"的主题。 1. **Java可执行化工具** 要将Java程序转换为...