Java打包商用化软件
这是我在博客中写的第一篇文章。还请各位大神们多多指教!
我会详细讲解如何将我们由java的swing以及awt组件编写出的java可视化窗口程序编制成一个我们能够让用户使用的,商业化,可安装的软件。网上的资料大都十分碎片化,看了之后往往会出现很多问题,导致最终无法成功。笔者在经过三天的尝试之后,总结出了以下经验,并且在这里全部整理一番,希望能够帮助到大家。具体的绿色工具也会在下面给出链接。
1.首先,笔者使用的是Intellij IDEA开发工具,个人认为这应该是比Eclipse更加先进的开发工具。因为在我们安装好JDK之后,完全不需要配置环境变量就可以自动检测JDK的路径,从而使我们的程序跑起来,并且没有困难的编译器设定,就可以使我们的编译器自动进行代码补全,十分方便。JetBrains公司确实在这方面做得不错。如果您用的Eclipse开发工具的话,也没有关系,其操作过程也是十分相似的。按照下面的步骤即可。
2.打开您的intellij idea,点击新建工程。

2.编写您的JAVA核心代码,也可以直接将以前编写好的代码直接复制过来放到这里,然后运行。看运行出来的GUI界面是否和我们所预期的GUI界面相同,是否会返回不正确的值等等。如果是的话,请您执行下一步
!
3.按组合键ctrl+shift+alt+s进入项目结构界面,点击第二张图片上的『+』按钮,选择第二个选项。

4.为jar包添加一个主函数,点OK继续


4.如果主函数有依赖包,点击『+』按钮添加依赖jar包,点击OK后可以看到工程中多出了META-INFO文件,里面包含了Jar的入口函数信息。


5.执行组建jar操作:按照下图操作后可以看到最终生成的jar文件



这样的话我们的jar就生成好了。现在我们就可以通过我制作的的jar to exe工具将其变成一个可在别人计算机上运行的exe程序。
其中的百度链接是:https://pan.baidu.com/s/1nwCvI33。一直点击下一步即可生成后缀为exe的可执行程序。
6.其中最重要的一步来了,既然我们已经得到了exe程序,如何才能够将我们的软件进行打包成一个可安装程序呢?请右转到360软件中心下载一个名为inno setup 免费的软件。在您连续点击了无数次next后,这软件会自动生成脚本文件,他长这样诶嘿。(这里的方法是笔者Geeksongs自己原创的!整个中国仅此一家!其他软件开发者都写的十分凌乱,并且根本无法使用它们的方法!使用它们的方法不会适用于新版!直接会使计算机崩溃!笔者就遭殃过,因此想把自己的方法分享出来,以免大家再次犯错!)

这时!要注意了!这个脚本文件由于其适用的版本过低!因此必须在下面的脚本代码中进行一定的更改!来,让我们看到下面的[Taks]类的脚本代码。在一段代码flags后面写的是:unchecked!这肯定是不对的!这段代码的含义是:使其不可见(被动不可见,意思你想看见也看不见)因为这样的话,我们安装好的软件就不会在桌面和开始菜单栏里创建快捷方式哟!因此应该将所有的unchecked改变为checkablealone!然后再继续往下,看到我们的最后一栏代码,有个0,6.1这里表明的是您的windows版本。如果想要在win7,win8,win10上安装成功的话,我们应该将其改变为0,8.1!这样的话脚本程序才可以在我们新版本的电脑上运行。
7.点击键盘上的F5,便可以得到我们的软件安装包了。
8.是不是很有意思呢?这样您所编写的JAVA软件就可以在别人的电脑上运行了,在其他计算机科学专业的朋友面前还可以炫耀一番。毕竟JAVA语言是在大二下学期开始学习的,打包程序是在研究生阶段才会有的。如果您在大一上期就做到了话,确实不错!
Java打包商用化软件的更多相关文章
- [破解]java打包Exe工具 - Jar2Exe Wizard
打包java文件为exe的方法和软件有很多,还有一些开源的软件和一些免费的软件. 我用过的所有打包exe软件中,Jar2Exe Wizard是最好用的,但是只有一个月的试用期,需要的可以从官网下载. ...
- java打包小记
1.一个类的 Hello.java class Hello{ public static void main(String[] agrs){ System.out.println("hell ...
- java打包遇到问题java.io.IOException: invalid header field
问题:java打包时报以下错误 $ jar -cvmf main.txt test.jar Shufile1.class java.io.IOException: invalid header fie ...
- 目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行、国家安全等行业领域
目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行.国家安全等行业领域. 要求建设开发大型复杂的网站,但仅有一个idea,不能够提供网站详 ...
- 安全模式下卸载windows installer打包的软件(转)
安全模式下卸载windows installer打包的软件 起因: 主机系统MAC,虚拟软件Parallels Desktop, 虚拟系统 Win 7. 今天在虚拟机WIN7里面安装了某个软件导致重启 ...
- Java打包生成exe(使用exe4j和inno setup)
Java打包生成exe 生成jar 先使用eclipse生成可执行的jar[可执行的jar包含内容更全面,包括指定主类的.mf] Exe4j的使用 一定要可执行jar进行打包. Project typ ...
- 用idea工具对java打包:命令 mvn clear package,报错
用idea工具对java打包:命令 mvn clear package,报错 网上都是eclipse的,要么是project structure和setting的(当然这俩也要用) 我都试了,每一个能 ...
- win7+64位+Java学习基本软件安装+环境配置+eclipse(IDE)
一.下载安装JDK 1.安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.h ...
- java打包成可执行的jar或者exe的详细步骤
Java程序完成以后,对于Windows操作系统,习惯总是想双击某个exe文件就可以直接运行程序,现我将一步一步的实现该过程.最终结果是:不用安装JRE环境,不用安装数据库,直接双击一个exe文件,就 ...
随机推荐
- requests库写接口测试框架初学习
学习网址: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dscpm/ff75b907-415d-4220-89 ...
- Spring出现事务代理的原因
JdbcTemplate 在配置事务代理之前,JdbcTemplate 的关闭策略,就是操作完立刻关闭!意味着,默认情况是JdbcTemplate操作是不支持事务的!!! 但是我们的程序是需要支持事务 ...
- CSS 屏幕大小自适应
要想实现css屏幕大小自适应,首先得引入 CSS3 @media 媒体查询器: media的使用和规则: ①被链接文档将显示在什么设备上. ②用于为不同的媒介类型规定不同的样式. 语法: @medi ...
- .Net core使用Autofac进行依赖注入示例
一.官方文档 https://autofaccn.readthedocs.io/zh/latest/index.html 二.新建.net core 控制台程序 三.注册类型,示例一 1.新建接口 I ...
- MVC Bundle生成的css路径问题
项目是嵌套在主站的一个子站点,结果用CssRewriteUrlTransform来将相对目录路径改成相对网站根目录路径的时候发现少了虚拟目录的路径.最终解决方案: /// <summary> ...
- [转] iphoneX、iphoneXS、iphoneXSMax、iphoneXR适配
基础知识 1. 关于iphoneX .iphoneXS.iphoneXSMax.iphoneXR机型的大小和像素 机型尺寸 注意:开发人员只需要记住开发尺寸 2. 屏幕组成 齐刘海(44px) + ...
- How Classes are Found
转载自: https://docs.oracle.com/javase/7/docs/technotes/tools/findingclasses.html How Classes are Found ...
- 对Inode、Hard Link以及Soft Link的理解
一.EXT2/EXT3等文件系统的分区格式 Linux的文件系统从EXT2开始将文件的属性和文件的实际内容分开存储,文件的属性由inode存储,文件的内容由block存储. 系统在对磁盘进行分区格式化 ...
- pwn学习之三
whctf2017的一道pwn题sandbox,这道题提供了两个可执行文件加一个libc,两个可执行文件是一个vuln,一个sandbox,这是一道通过沙盒去保护vuln不被攻击的题目. 用ida打开 ...
- 手写数字识别 ----在已经训练好的数据上根据28*28的图片获取识别概率(基于Tensorflow,Python)
通过: 手写数字识别 ----卷积神经网络模型官方案例详解(基于Tensorflow,Python) 手写数字识别 ----Softmax回归模型官方案例详解(基于Tensorflow,Pytho ...