用jsmooth + inno生成exe并制作简单安装包
2015-08-19 11:13
489 查看
jar + jsmooth + inno%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/fb58413428f6814a739130a1279f0283.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/51ea1f872fe7d79766d30ba0075f3030.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/7d78dd06442b344a7b260936e6c52e78.jpg)
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/39109328da2d020dabeb2f9b52ef8a9a.jpg)
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/887d06ce2e1557f6421b9eed9e7243b5.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/96a7ad9ead774562764f22f8b17435cf.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/d76e71498c35657b37ac19292d3e4a90.jpg)
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/a5863378439d2e7fef067f76ce0d1aad.jpg)
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/7a8ec3cc4d3a3b3a77b46505011dafd4.jpg)
%26nbsp;
=======================================================================
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/c223ade0db80c1fdbd08705cdc647ae0.jpg)
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/66cd80384f59b4fe35c9ef163bbe3187.jpg)
<
4000
p>%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/af0e1c27d96d45afc71158c632d8b4c8.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/0c26a53a92870f6a5c0bd3788eb77dc3.jpg)
%26nbsp;
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/decdc3ffbc2d122c4118e7607aa3039a.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/0e6657096549f16cc9c57c9d7f9eb494.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/524dda851ffcdcc5ad1233d0a39f076e.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/9a97cd6eee74426a92be9cbd108a8493.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/ca5669f600461268eb66de55bb3cceab.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/29f94883f5b075deaea831b22f6cb5fe.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/16e9af2b3f6e37bdd4a7da7cefe6762e.jpg)
%26nbsp;
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/93401ce4dba8e3cdfa5af1cdad9f011d.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/5c18710507f090381ae18f36b6066dbb.jpg)
%26nbsp;
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/6b8750f49d2578e76821ee533c63d36a.jpg)
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
%26nbsp;
思路: | 先由 Jsmooth把jar和相关资源打包生成exe,再由Inno把exe和资源文件打成安装包 |
%26nbsp;
一%26nbsp; Jsmooth |
%26nbsp;
1 下载 安装 Jsmooth%26nbsp;%26nbsp; 地址:jsmooth.sourceforge.net |
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/fb58413428f6814a739130a1279f0283.jpg)
2 | 启动 |
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/51ea1f872fe7d79766d30ba0075f3030.jpg)
3 | welcome |
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/7d78dd06442b344a7b260936e6c52e78.jpg)
4 | skecton | %26nbsp; | 勾选进程,单例 |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/39109328da2d020dabeb2f9b52ef8a9a.jpg)
5 | Executable | 需要指定将来生成的exe的名字和位置以及对应的图标。这里用png最好,自己以前用的ico格式的不识别 | ||||||
%26nbsp; | %26nbsp; | %26nbsp; | current Directory如果勾选则是相对目录 | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp; | %26nbsp; | %26nbsp; | 这步结束后建议点击保存图标,把此前过程保存起来等下次直 | %26nbsp;接打开 | %26nbsp; | %26nbsp; |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/887d06ce2e1557f6421b9eed9e7243b5.jpg)
6 | Appliction | 最好首先添加Classpath中的jar和其它资源。可以选择将一个jar嵌入到将来的exe中,这点对保护源代码最好不过。最后指定主类 |
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/96a7ad9ead774562764f22f8b17435cf.jpg)
7 | JVM%26nbsp; select | 指定jvm版本范围,指定是否携带独立的jre(好处是不管目标机器是否安装java都可以运行,缺点压缩包比较大) |
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/d76e71498c35657b37ac19292d3e4a90.jpg)
8 | JVM Configure | 配置jvm参数和memory大小范围 |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/a5863378439d2e7fef067f76ce0d1aad.jpg)
9 | 编译 | %26nbsp; | 点击小齿轮编译成功,之后去指定目录查看运行生成的exe | %26nbsp; | |||
%26nbsp; | %26nbsp; | %26nbsp; | 本例生成的是myexe.exe | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp; | %26nbsp; | %26nbsp; | 本例主要目标是把EC.jar打包成myexe.exe,其它都是资源和依赖文件 |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/7a8ec3cc4d3a3b3a77b46505011dafd4.jpg)
%26nbsp;
=======================================================================
二 Inno%26nbsp; |
%26nbsp;
%26nbsp;
1 | 下载 安装 Inno%26nbsp;%26nbsp; 地址:http://www.jrsoftware.org |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/c223ade0db80c1fdbd08705cdc647ae0.jpg)
2 | 启动 新建项目,基本很简单就是一直点next |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/66cd80384f59b4fe35c9ef163bbe3187.jpg)
<
4000
p>%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/af0e1c27d96d45afc71158c632d8b4c8.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/0c26a53a92870f6a5c0bd3788eb77dc3.jpg)
3 | 选择exe和依赖的资源 | 注意在添加其它资源时,如果是整个资源文件夹那么,添加后系统只会添加子文件和子文件夹, | ||||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | 所有如果要保留整个文件结构,则需要将这个文件再放到一个新文件夹中,就是再多一层嵌套, | ||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | 这个新文件夹名无所谓,随便起 | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/decdc3ffbc2d122c4118e7607aa3039a.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/0e6657096549f16cc9c57c9d7f9eb494.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/524dda851ffcdcc5ad1233d0a39f076e.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/9a97cd6eee74426a92be9cbd108a8493.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/ca5669f600461268eb66de55bb3cceab.jpg)
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/29f94883f5b075deaea831b22f6cb5fe.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/16e9af2b3f6e37bdd4a7da7cefe6762e.jpg)
%26nbsp;
4 | 确认,生成脚本并保存,一直确认YES,到结束 |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/93401ce4dba8e3cdfa5af1cdad9f011d.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/5c18710507f090381ae18f36b6066dbb.jpg)
%26nbsp;
5 | 查看生成的Installer | 可以进行安装测试,整体结束 |
%26nbsp;
![](https://oscdn.geek-share.com/Uploads/Images/Content/202002/13/6b8750f49d2578e76821ee533c63d36a.jpg)
三 注意和问题 |
%26nbsp;
%26nbsp;
%26nbsp;
jsmooth 需要讲ec.jar 嵌入到exe中去,所以在打安装包的时候就不需要ec.jar了 也是安全 | %26nbsp; | %26nbsp; | %26nbsp; | ||||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;jsmooth 在选择可执行的二进制文件时 一定要自己命名 比 | %26nbsp;如 xxx.exe | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | ||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;保存的脚本格式例如 abc.jsmooth | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | |||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;inno 坑%26nbsp;%26nbsp; 在添加资源的时候 如果是folder%26nbsp; ,在安装后会进到子文件里 所有 要多加一层%26nbsp;%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | ||||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;myexe.exe要运行起来 必须有个 jre 文件夹 其中包括了 运行时环境(可以自带jre独立),Data 和相关的DLL都放到该目录中。 | |||||||||||
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;两个问题 | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | |
%26nbsp;1%26nbsp; icon 不识别 需要弄个%26nbsp; png格 式 | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | |||
%26nbsp;2%26nbsp; dll的注册与注销%26nbsp;%26nbsp;%26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; | %26nbsp; |
%26nbsp;
相关文章推荐
- 用jsmooth + inno生成exe并制作简单安装包
- hdoj2066 一个人的旅行(dijstra——floyd)
- 用jsmooth + inno生成exe并制作简单安装包
- JavaScript indexOf() 方法
- javascript-void keyword
- js实现文本框支持加减运算的方法
- extjs4 省市区选择器
- 使用JS对select标签进行联动选择
- js实现滑动条效果
- 深入理解Javascript window对象
- Float精度 在JS的解决方法
- js中获取当前url参数值的一个方法
- JS后退, JS返回上一页, JS返回下一页
- JS实现方向键切换输入框焦点的方法
- JavaScript API for Office Outlook Add-in - “一页纸文档“
- rapidjson的read和write的sample
- js 返回上一页和刷新
- JS数组的下标如果是字符串的排序
- JavaScript按照MVC模式制作自定义控件
- js实现input框文字动态变换显示效果