- 浏览: 1276962 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (608)
- 数据结构 (2)
- AJAX (3)
- 设计模式 (3)
- java (117)
- js (14)
- css (9)
- jsp (10)
- 杂文 (49)
- htmlparser (6)
- 数据库 (29)
- 算法 (14)
- 数据挖掘 (11)
- 电脑杂症 (12)
- 网络爬虫 (7)
- 应用服务器 (9)
- PHP (2)
- C# (14)
- 测试 (3)
- WEB高性能开发 (3)
- swt (1)
- 搜索引擎 (16)
- HttpClient (4)
- Lite (1)
- EXT (1)
- python (1)
- lucene (4)
- sphinx (9)
- Xapian (0)
- linux (44)
- 问题归类 (1)
- Android (6)
- ubuntu (7)
- SEO (18)
- 数学 (0)
- 农业资讯 (12)
- 游戏 (3)
- nginx (1)
- TeamViewer (1)
- swing (1)
- Web前 端 (1)
- 主页 (0)
- 阿萨德发首发身份 (0)
- 软件设计师 (0)
- hibernate (5)
- spring3.0 (5)
- elastic (1)
- SSH (3)
- ff (0)
- oracle 10g (9)
- 神经网络 (1)
- struts2.0 (2)
- maven (1)
- nexus (1)
- 辅助工具 (3)
- Shiro (1)
- 联通项目 (0)
- 2014年专业选择 (0)
- freemarker (1)
- struts1.2 (8)
- adfasdfasfasf (0)
- TortoiseSVN (1)
- jstl (1)
- jquery (1)
- eclipse plugin (0)
- 游戏外挂 (1)
- 推广 (0)
- 按键精灵 (1)
- ibatis3.0 (1)
最新评论
-
水野哲也:
不不不, 这个您真错了!其实是你引用的那个jsp和本身的jsp ...
解析关于jsp页面指令冲突问题contentType="text/html;charset=UTF-8" -
caobo_cb:
import xx.cn.weibo.Util;
[ java版]新浪微博之ruquest_token篇 -
caobo_cb:
你好 Util包没有
[ java版]新浪微博之ruquest_token篇 -
小桔子:
你好!我遇到个问题 max_allowed_packet值总是 ...
mysql查询占用内存,优化的技巧 -
donghustone:
谢谢大神!
用JSmooth制作java jar文件的可执行exe文件教程(图文)
对于Java桌面应用来说,比较烦琐的就是安装部署问题,如:客户端是否安装有jre、jre版本、jre在哪里下载、如何用jre启动Java应用等等。不要说刚接触电脑的人,就算是比较熟悉电脑,如果没有接触过Java,面对一个Java应用,如何在Windows下启动它,估计都会折腾半天。所以这个是导致Java桌面应用被一些人所讨厌的最大原因,Java的优势是“一次编写,随处运行”,跨平台特性确实很好,但并不是每个人都需要跨平台,而且有时候JVM平台或版本问题也会造成“一次编写,到处测试”的尴尬。对于固定平台下的Java应用,最好的方式莫过于带着JRE,让用户轻松点击就能运行。下面我们来解决这样的问题。
针对windows平台,主要方法是:先将JRE进行精简,再使用工具exe4j 来解决双击运行使用的问题,最后用Inno Setup打包成安装程序, 这样一来,我们的Java应用就和普通的windows应用程序一样了。
本文相关下载
本教程PDF格式文档
http://www.uushare.com/user/javapro/file/1418624
http://www.rayfile.com/files/7840998c-1824-11de-942b-0014221b798a/
本教程示例程序
http://www.uushare.com/user/javapro/file/1418316
http://www.rayfile.com/files/3ee1f95c-1826-11de-bcfb-0019d11a795f/
exe4j 4.2 注册版
http://www.uushare.com/user/javapro/file/1418327
http://www.rayfile.com/files/c56bebba-1826-11de-9b55-0019d11a795f/
Inno Setup 汉化增强版 + ISTool汉化 + 反编译套装 + ISFD界面设计汉化
http://www.uushare.com/user/javapro/file/1418305
http://www.rayfile.com/files/95c91dd9-1826-11de-89b1-0019d11a795f/
一、精简JRE
JRE6默认安装大小大约90M,而一般程序只有几M甚至几百K,带JRE运行,感觉非常不合理,分发与网络传输过程也会大受影响。关于JRE的精简参照下面几篇相关文章:
Java程序发布之jre篇
http://www.blogjava.net/gdws/archive/2006/12/25/89898.html
如何制作最小的RCP程序压缩包(包含JRE)
http://www.eclipseworld.org/bbs/read-cec-tid-5777.html
让Java程序带上精简的jre(附工具)
http://glemir.xplore.cn/archives/200
JRE极限精简探求手册[1]——精简一个Swing的即时战略游戏
http://cping1982.blog.51cto.com/601635/129630
Java应用——精简JRE体积的小工具
http://blog.csdn.net/cping1982/archive/2008/09/02/2865198.aspx
JVM rt.jar 精简工具图形外壳 0.1
http://www.blogjava.net/beansoft/archive/2008/12/19/247321.html
可以运行 RCP/Swing 的迷你JRE 6(3.75MB)
http://www.blogjava.net/beansoft/archive/2008/01/18/176353.html
可以运行SWT的精简版JRE 1.4.2_04, 压缩后仅1.3MB
http://www.blogjava.net/beansoft/archive/2007/03/07/102381.html
总得来说JRE精简是一个比较复杂的工作,如果不清楚某部分的功能不要轻易进行删减,否则可能产生一些未知的错误。pack200压缩工具在对某些重新打包过的rt.jar文件压缩时会产生错误,如果使用的话一定要注意控制台的输出信息。
二、使用exe4j生成exe可执行文件
下面是我的一个完整Java示例程序 —— TestProcessBar。可以看到示例程序已经附带了jre , 下面先使用exe4j给它制作一个exe可执行文件(即图中的TestProcessBar.exe),并指定我们自带的jre 。
以下是exe4j的启动界面,点击Next开始创建配置文件。
接着选择要创建的exe文件类型,在这里我们选择第一个,这样其实是为程序创建一个可以双击运行的启动器,可以保证程序仍具有跨平台的特性。如果选择第二个,可以把程序完全编译成exe文件,可以更好的保护你的程序不被反编译。
接下来设置程序的短文件名,源文件夹路径(可以使用exe4j工程文件的相对路径。这里我的exe4j文件保存在launcher目录下,所以使用的源路径为[..],即上一级目录),以及要生成的exe文件的存放目录,exe存放目录相对路径为源文件夹,这里我把它指定为当前源文件夹。
接下来,可以给我们即将生成的exe文件起一个名字,如我的“TestProcessBar.exe”,还可以给它指定一个ico类型的图标,其它按默认就可以了,如图:
这里我们还可以为要生成的exe文件附加一些信息
接下来的这一步,我们需要把程序中所用到的类路径添加上去。然后指定程序的启动类,其它如果没有必要的话,则按默认即可,点击+号添加类路径:
基本上我们所需要用到的jar文件都要添加上去,可以逐个添加上去,也可以添加整个文件夹或者使用系统环境变量,为了使程序能够随处运行,强列建议使用相对路径,并且不要使用环境变量。添加好类路径之后回到上一步去选择"Main Class"即可。
接下来先选择我们的程序所需要的jre版本, 然后便是选择我们自带的jre了,这一步不是必须,但是为了更好的分发程序,我们自带了jre, 所以有必要把我们自带的jre指定为首选的运行环境,如图选择Search sequence
默认情况下程序会去系统的注册表,环境变量及相关的目录查找jre,因为我们只需要自带的jre,所以这里我把默认的选项移除了(如果觉得有必要的话可以把默认的选项放在自带jre选项的后面,不删除),然后添加我们自己的jre所在的目录路径,点+号开始:
这里还是建议使用相对的目录路径:
指定jre所在的目录,如图:
最后我的jre目录路径就是这样的:.\jre
下面这一步启动画面,有兴趣的可以自已设置一下。
程序最终生成了这个执行文件: TestProcessBar.exe
现在使用它,已经可以正常利用我们自带的jre启动程序了,但是整个程序仍有近19M的大小。
这时候打个压缩包,已经可以进行发布了。但是为了更大的压缩,并制作更加方便易用的程序,下面我们使用Inno Setup进行压缩并制作一个安装包。
三、使用Inno Setup为程序制作打包安装程序
安装后启动脚本向导,如图所示:
这里指定程序的启动文件,即刚才用exe4j创建的exe文件。然后将整个程序目录都包含进去就可以了(这里因为程序中有一些exe4j和inno setup的工程文件,故有所选择),接下来的基本上一直按下一步就可以了,其中要设置一下安装程序的输出目录,直到脚本向导完成
然后执行该脚本即可:
然后找到Inno Setup的输出目录,就可以看到编译输出后的安装包了,如下图:setup.exe
大小已经压到了6.38M。
利用这个就可以快速轻松的安装你的Java桌面应用了。
四、总结
总体来讲,我们的目的是为了让我们编写出的程序更加的方便易用。通过以上的学习,现在我们已经可以制作出可双击运行、不用用户另装jre的、简单易用的程序安装包。大家可以对jre精简、exe启动器的制作、打包安装进行更深入的学习。本教程中的工具只是做一个抛砖引玉,还有很多类似功能的工具有待大家去研究,最后,希望大家能够制作出属于自己的简单明快的一键式Java程序。
原文链接:http://www.blogjava.net/javapro/archive/2009/03/24/JavaAppSetup.html
针对windows平台,主要方法是:先将JRE进行精简,再使用工具exe4j 来解决双击运行使用的问题,最后用Inno Setup打包成安装程序, 这样一来,我们的Java应用就和普通的windows应用程序一样了。
本文相关下载
本教程PDF格式文档
http://www.uushare.com/user/javapro/file/1418624
http://www.rayfile.com/files/7840998c-1824-11de-942b-0014221b798a/
本教程示例程序
http://www.uushare.com/user/javapro/file/1418316
http://www.rayfile.com/files/3ee1f95c-1826-11de-bcfb-0019d11a795f/
exe4j 4.2 注册版
http://www.uushare.com/user/javapro/file/1418327
http://www.rayfile.com/files/c56bebba-1826-11de-9b55-0019d11a795f/
Inno Setup 汉化增强版 + ISTool汉化 + 反编译套装 + ISFD界面设计汉化
http://www.uushare.com/user/javapro/file/1418305
http://www.rayfile.com/files/95c91dd9-1826-11de-89b1-0019d11a795f/
一、精简JRE
JRE6默认安装大小大约90M,而一般程序只有几M甚至几百K,带JRE运行,感觉非常不合理,分发与网络传输过程也会大受影响。关于JRE的精简参照下面几篇相关文章:
Java程序发布之jre篇
http://www.blogjava.net/gdws/archive/2006/12/25/89898.html
如何制作最小的RCP程序压缩包(包含JRE)
http://www.eclipseworld.org/bbs/read-cec-tid-5777.html
让Java程序带上精简的jre(附工具)
http://glemir.xplore.cn/archives/200
JRE极限精简探求手册[1]——精简一个Swing的即时战略游戏
http://cping1982.blog.51cto.com/601635/129630
Java应用——精简JRE体积的小工具
http://blog.csdn.net/cping1982/archive/2008/09/02/2865198.aspx
JVM rt.jar 精简工具图形外壳 0.1
http://www.blogjava.net/beansoft/archive/2008/12/19/247321.html
可以运行 RCP/Swing 的迷你JRE 6(3.75MB)
http://www.blogjava.net/beansoft/archive/2008/01/18/176353.html
可以运行SWT的精简版JRE 1.4.2_04, 压缩后仅1.3MB
http://www.blogjava.net/beansoft/archive/2007/03/07/102381.html
总得来说JRE精简是一个比较复杂的工作,如果不清楚某部分的功能不要轻易进行删减,否则可能产生一些未知的错误。pack200压缩工具在对某些重新打包过的rt.jar文件压缩时会产生错误,如果使用的话一定要注意控制台的输出信息。
二、使用exe4j生成exe可执行文件
下面是我的一个完整Java示例程序 —— TestProcessBar。可以看到示例程序已经附带了jre , 下面先使用exe4j给它制作一个exe可执行文件(即图中的TestProcessBar.exe),并指定我们自带的jre 。
以下是exe4j的启动界面,点击Next开始创建配置文件。
接着选择要创建的exe文件类型,在这里我们选择第一个,这样其实是为程序创建一个可以双击运行的启动器,可以保证程序仍具有跨平台的特性。如果选择第二个,可以把程序完全编译成exe文件,可以更好的保护你的程序不被反编译。
接下来设置程序的短文件名,源文件夹路径(可以使用exe4j工程文件的相对路径。这里我的exe4j文件保存在launcher目录下,所以使用的源路径为[..],即上一级目录),以及要生成的exe文件的存放目录,exe存放目录相对路径为源文件夹,这里我把它指定为当前源文件夹。
接下来,可以给我们即将生成的exe文件起一个名字,如我的“TestProcessBar.exe”,还可以给它指定一个ico类型的图标,其它按默认就可以了,如图:
这里我们还可以为要生成的exe文件附加一些信息
接下来的这一步,我们需要把程序中所用到的类路径添加上去。然后指定程序的启动类,其它如果没有必要的话,则按默认即可,点击+号添加类路径:
基本上我们所需要用到的jar文件都要添加上去,可以逐个添加上去,也可以添加整个文件夹或者使用系统环境变量,为了使程序能够随处运行,强列建议使用相对路径,并且不要使用环境变量。添加好类路径之后回到上一步去选择"Main Class"即可。
接下来先选择我们的程序所需要的jre版本, 然后便是选择我们自带的jre了,这一步不是必须,但是为了更好的分发程序,我们自带了jre, 所以有必要把我们自带的jre指定为首选的运行环境,如图选择Search sequence
默认情况下程序会去系统的注册表,环境变量及相关的目录查找jre,因为我们只需要自带的jre,所以这里我把默认的选项移除了(如果觉得有必要的话可以把默认的选项放在自带jre选项的后面,不删除),然后添加我们自己的jre所在的目录路径,点+号开始:
这里还是建议使用相对的目录路径:
指定jre所在的目录,如图:
最后我的jre目录路径就是这样的:.\jre
下面这一步启动画面,有兴趣的可以自已设置一下。
程序最终生成了这个执行文件: TestProcessBar.exe
现在使用它,已经可以正常利用我们自带的jre启动程序了,但是整个程序仍有近19M的大小。
这时候打个压缩包,已经可以进行发布了。但是为了更大的压缩,并制作更加方便易用的程序,下面我们使用Inno Setup进行压缩并制作一个安装包。
三、使用Inno Setup为程序制作打包安装程序
安装后启动脚本向导,如图所示:
这里指定程序的启动文件,即刚才用exe4j创建的exe文件。然后将整个程序目录都包含进去就可以了(这里因为程序中有一些exe4j和inno setup的工程文件,故有所选择),接下来的基本上一直按下一步就可以了,其中要设置一下安装程序的输出目录,直到脚本向导完成
然后执行该脚本即可:
然后找到Inno Setup的输出目录,就可以看到编译输出后的安装包了,如下图:setup.exe
大小已经压到了6.38M。
利用这个就可以快速轻松的安装你的Java桌面应用了。
四、总结
总体来讲,我们的目的是为了让我们编写出的程序更加的方便易用。通过以上的学习,现在我们已经可以制作出可双击运行、不用用户另装jre的、简单易用的程序安装包。大家可以对jre精简、exe启动器的制作、打包安装进行更深入的学习。本教程中的工具只是做一个抛砖引玉,还有很多类似功能的工具有待大家去研究,最后,希望大家能够制作出属于自己的简单明快的一键式Java程序。
原文链接:http://www.blogjava.net/javapro/archive/2009/03/24/JavaAppSetup.html
- innosetup5403_skygz.rar (6.1 MB)
- 下载次数: 12
发表评论
-
tomcat was unable to start within 45 seconds
2013-11-11 15:59 842原因一: -
Apache Commons Lang
2013-10-15 12:10 3170ArrayUtils public class Tes ... -
htmlunit form
2013-06-25 11:13 931Form提交 对于WEB应用,有着大量的表单,所以Html ... -
QQ微博登录步骤
2013-05-28 12:14 0QQ微博登录步骤: 1、验证帐号时,会访问一个地址。如下: ... -
jsoup
2013-05-22 23:37 1148import org.jsoup.Jsoup; import ... -
java 加密解密
2013-05-21 23:00 851import java.security.InvalidKey ... -
freemarket 对象应用篇(一)
2013-05-19 18:18 1049freemarket应用. 1.1:创建web工程testF ... -
中文数字转阿拉伯数字
2012-11-30 14:24 1804/** * @author loiy * ... -
标记:伪原创标题思路
2012-01-11 16:34 1299采用填词的办法进行伪 ... -
用JSmooth制作java jar文件的可执行exe文件教程(图文)
2012-01-05 01:09 8199下载完程序之后,运行 jsmoothgen.exe 1.进入“ ... -
多线程 Java.util.ConcurrentModificationException异常
2011-12-29 13:43 1531Iterator<Entry<String,B ... -
java 反序列化 抛出EOFException
2011-12-19 17:21 2260抛出这样的异常,一般情况下,是因为业务逻辑的问题。 如: 在没 ... -
只针对中英文混合分词的中文分词器
2011-12-02 17:28 4879该版本说明 1、只针对中英文混合分词 需要一些中文和英文连在 ... -
Java开源运行分析工具
2011-11-15 15:10 1889FProfiler FProfiler是一个非常快的Java ... -
cwss 按照指定的字符进行切词
2011-11-15 09:37 1241cwss 按照指定的字符进行切词 在 Utility.SEPE ... -
cwss bug 修复
2011-11-07 09:50 893修复的BUG有如下: 1、当只有中文、字母和数字,没有任何其他 ... -
java 怎么读取细胞词库scel
2011-10-24 14:28 3124private void sogou(String pa ... -
今天遇到一个奇怪的问题
2011-04-28 11:55 1190想实现一个用户访问页面,得到用户的外网地址 在公司上。程序是没 ... -
在myeclipse6.5下统一全部JSP编码更改
2011-04-07 14:47 1467在平时我们新建一个JSP页面默认编码是"ISO885 ... -
pushlet 资料
2011-03-21 19:03 995标记一下!
相关推荐
在提供的PDF文档《一键安装双击运行——Java安装程序制作》中,会详细阐述以上步骤,并可能提供实际示例和代码片段,帮助开发者更好地理解和实践这个过程。通过学习这份资料,开发者不仅可以学会如何制作Java安装...
一键安装java脚本 Linux 安装jdk
标题中的“net2.0一键安装”指的是Microsoft .NET Framework 2.0的快速安装程序。这个工具设计得非常简洁,使得用户只需双击即可完成安装过程,无需手动执行复杂的步骤或解决安装过程中可能出现的问题。这对于开发者...
2. 运行安装程序:找到下载好的安装包,双击运行。一键安装程序会自动引导你完成整个安装过程,无需手动配置。 3. 接受许可协议:在安装过程中,会显示Oracle的软件许可协议,阅读并同意后才能继续。 4. 自动配置...
- 虽然打包成.exe文件可以减少对环境的依赖,但还需要确保服务器上安装了兼容的Java版本,因为并非所有Java应用程序都能在所有JRE版本上运行。 - 部署前,确认服务器的操作系统版本、内存大小以及磁盘空间是否满足...
6. **验证与测试**:教程可能会指导用户如何验证安装是否成功,例如通过运行简单的Java程序,部署一个Web应用,或者连接到数据库进行查询。 7. **后续操作**:介绍如何在新环境中开发、部署和管理JavaWeb应用程序,...
在当今的数字时代,.NET Framework作为微软开发的应用程序运行环境,对于Windows用户来说至关重要。它为开发者提供了丰富的类库和功能,使得创建高性能、安全的桌面及Web应用程序变得更为便捷。然而,不少用户在尝试...
VC++运行库一键安装是一款Microsoft Visual C Redistributable的VC++运行库合集32位/64位整合版,Microsoft Visual C++ 运行库,保证采用Microsoft Visual Studio 20XX编写的软件能够正常运行,你可以轻松一键安装VC...
总之,“网络打印机一键安装脚本”是一个集成了网络通信、操作系统交互、驱动程序管理和错误处理等多方面技术的实用工具,它的出现使得打印机的安装过程变得既快速又无痛,体现了IT技术在提升用户体验方面的巨大潜力...
"一键安装"的解决方案就是为了解决这个问题,通过自动化脚本或定制的安装程序,使得用户只需双击执行文件,即可自动完成所有必要的配置和安装步骤,省去了手动操作的麻烦。 "sql server2005一键安装"可能包含以下...
2. **运行安装程序**:双击运行这个exe文件,程序会自动检测系统环境,确认兼容性并开始安装过程。 3. **等待安装完成**:安装过程中,用户可能需要按照提示进行简单的交互,如确认安装选项或输入管理员密码。大...
**IIS一键安装程序** IIS(Internet Information Services)是由微软公司提供的一个强大的Web服务器,用于托管网站、应用程序和服务。IIS支持多种互联网协议,如HTTP、HTTPS、FTP等,是Windows操作系统中的一个重要...
2. **静默安装**:通过命令行参数启动安装程序,例如`msiexec /i MySQL.msi /qn`,实现无界面的静默安装。 3. **配置参数**:脚本会读取`conf.properties`文件中的配置信息,如端口号、用户名、密码等,以便在安装...
**Nginx 一键安装与自动化脚本** 在IT行业中,服务器配置和管理是一项重要的任务,尤其是在处理Web服务时。Nginx是一款高性能的HTTP和反向代理服务器,以其高效、稳定和轻量级的特性而广受欢迎。本文将详细讨论如何...
"Genesis9.07b2一键安装"是一个针对Genesis软件的特定版本——9.07b2的便捷安装程序。Genesis通常是指一个广泛使用的软件工具,可能是用于开发、数据分析、系统管理或者其他IT相关领域的功能。这个一键安装版本的...
输入以下命令下载并运行鱼香ROS一键安装脚本: bash wget http://fishros.com/install -O fishros && . fishros 配置系统源 脚本运行后,根据提示输入数字进行系统源的配置。 例如,输入数字5以一键配置系统源,输入...
Java jdk1.8环境一键安装配置.
《安装制作工厂 2.1.2:一键打造专业安装程序的艺术与技术》 在软件开发的世界里,发布一个程序并不仅仅是编写代码那么简单,它还需要一个用户友好的安装过程。"安装制作工厂 2.1.2"就是这样一款工具,旨在帮助...
在实际操作中,用户需要先解压下载的zip文件,然后运行其中的安装程序。根据提示,连接设备,通常是以USB调试模式,让电脑识别到设备。随后,一键安装程序会自动查找适合的驱动,进行安装。安装过程中,可能需要用户...
该工具提供了在linux环境的一键部署功能,可以大幅度减少开发人员的工作,不过压缩包里面只提供了jdk1.8,如果需要安装其他版本,则将所需版本下载后放到该压缩包中,则可以通过脚本意见安装部署,更多资源可以关注...