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文件,就 ...
随机推荐
- MQTT控制---connect
连接服务端 客户端到服务端的第一个报文必须是CONNECT,且只能发送一次,发送的第二个connect报文当作违规处理并断开连接. 有效载荷包含一个或者多个编码的字段.包括客户端的唯一标识符,Will ...
- sortable.js 拖拽排序及配置项说明
// 拖动排序 $(function() { /*排序*/ //排序 // Simple list ]; new Sortable(list, { group: "name", a ...
- 依赖背包——cf855C好题
比较裸的依赖背包,但是想状态还是想了好久 转移时由于边界问题,虽然可以倒序转移,但当容量为0|1的时候,由于有初始值的存在 很难再原dp数组上进行修改,所以额外用tmp数组来保存修改后的值 #incl ...
- 强大而灵活的的Html解析器——Html Agility Pack
一.概述 Html Agility Pack 简称HAP,是一个强大而灵活的解析Html DOM的.Net类库. 二.官方链接 官网:http://html-agility-pack.net/ NuG ...
- JAVA -数据类型与表达式---变量与赋值
变量 程序中所管理的大部分信息,都是用变量表示的.下面讨论如何在程序中声明和使用变量. 变量(variable)代表保存数据的内存单元,变量名是内存单元的符号地址.变量声明要求编译器分配足够大的内存单 ...
- OpenCV-Python : 直方图
啥叫直方图 直方图简单来说就是图像中每个像素值的个数统计,比如一副灰度图中像素值为0的有多少个,1的有多少个... 在计算直方图之前,先了解几个术语: dims:要计算的通道数,对于灰度图dims=1 ...
- kafka常规及几个重要的操作命令
1. 查看所有topic kafka-topics.sh --zookeeper hadoop3 --list 2. 创建tooic及topic的partitioner ./kafka-topics. ...
- 解决问题SyntaxError: Unexpected token import
ES6语法的模块导入导出(import/export)功能,我们在使用它的时候,可能会报错: SyntaxError: Unexpected token import 语法错误:此处不应该出现impo ...
- springMVC 多文件上传前后台demo
只是个demo,需要数据校验,流程是通的 配置上传文件的解析器 前端代码; <%@ page language="java" contentType="text/h ...
- *CTF 2019 quicksort、babyshell、upxofcpp
这次参加比赛总共出了三道,有两道队友都先交了,还是tcl,heap_master卡了差不多一天没解决....还是记录一下出的题目吧 quicksort 题目大体流程就是输入要输入的数字数量,然后输入数 ...