我们通过Java编写好程序之后打包为jar包运行,通过下面的命令
java–jar example.jar
这里是运行在我们自己的机器上面。但是要想将程序运行在其他机器上的话,就需要麻烦一些了,本文就来介绍一下这种方法,使用的工具为exe4j,通过文章末尾的附加信息可以找到exe4j的下载地址
exe4j专门用作将java程序发布到windows操作系统环境中,无论是作为service服务、界面程序还是命令行程序它都可以完成,并且非常出色。
下面通过一次完整的操作流程学习exe4j这个程序,这里使用的exe4j版本为4.5.2
1. 在第一步可以加载之前操作保存的配置文件,通过这里可以看到人家老外对用户体验的确注意得很好,由于这里我们没有所以只能一步一步来了
2. 这里我们只有一个jar文件,所以选择使用JAR IN EXE。如果即将包装的程序中还包含目录或者非jar文件,是不能使用这个模式的,只能选择使用Regular mode。
3. 设置程序名称和生成exe程序文件的输出目录
4. 设置执行程序的类型、名称、图标、工作目录(默认为.代表程序当前目录的意思),还可以在高级选项中重定向程序日志、版本信息、生成64bit程序、程序的运行级别等等,这里需要注意一点如果你的jar程序需要接受参数的话,要将Allow –console patameter选项勾中。
5. 在这一步主要讲我们打好的jar文件通过这个绿色按钮添加进来,然后在main class中选择jar包的带有main函数的类。同时在这里还可以设置JVM允许参数,以及程序运行的本地库等等
6. 设置需要的JRE版本,若没有版本最高限制保持其为空即可。
重点来了,如果我们想要保证发布的程序可以在没有安装JRE的机器上面运行的话,需要连同JRE一起发布到其他机器上面去。在高级选项Search sequence中要设置exe程序与jre的相对目录,我这里为.\jre7并且将搜索次序设置在了最前,说明应该将exe程序与jre7放在同一个目录下,程序运行时会首先从该jre7文件夹下面的bin目录寻找java.exe。如果没有找到就会依次向下寻找的搜索选项中寻找,如果一直没有找到就会报错。
7. 这里可以设置程序的启动画面,没有要求可以直接next
8. 设置程序运行错误的各种提示信息
9. 编译
10. 试运行生成的程序,还记得我们在第六步设置JRE的相对路径吗?(.\jre7),如果想要运行程序,需要将exe与JRE(文件夹名为jre7)与exe放置在同一目录下。如果机器没有在注册表和环境变量中设置JRE相关信息的话。
至此一个完整的加壳过程就完成了,第一次使用可能会出现这些哪些没有注意到的错误,不过通过摸索+细心就可以很快掌握这个好用的工具。
附加信息: