【java】java程序打包工具fatjar在eclipse环境下的安装和使用

时间:2021-07-12 15:44:00

java项目工程文件一步步扩大,通常打包成jar,运行命令java -jar programName.jar即可跑起java项目,如图1。fatjar一款三方的jar打包工具,利用它可以指定Main方法,设置给定的路径,调整运行环境等用处,比原生的jar打包方式,更加有效和方便。

【java】java程序打包工具fatjar在eclipse环境下的安装和使用

图1 jar运行cmd命令

【开发环境】

1.eclipse-jee-neon-2-win32-x86_64,(如果是Eclipse4.x需要安装Eclipse2.0版本的插件。这里不做考虑)。 2.fatjar安装包,推荐采用在线安装,在线地址为:fatjar - http://kurucz-grafika.de/fatjar。 3.java开发工具,jdk-8u131-windows-x64.exe


【开发流程】


1.搭建好Eclipse环境后,选择菜单栏Help->Install New Software,如图2所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图2 Install New Software
2.首先安装Eclipse2.0插件,The Eclipse Project Updates - http://download.eclipse.org/eclipse/updates/4.7,   在弹出的可安装组件中选择:   Eclipse Tests, Examples, and Extras    打开下拉选择:Eclipse 2.0 Style Plugin Support安装;如图3所示 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图3 Eclipse 2.0 Style Support 3.在线安装,输入:fatjar - http://kurucz-grafika.de/fatjar   如图4所示。离线安装时,下载好fatjar后,点Add-地址栏里输入fatjar的本地路径。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
【java】java程序打包工具fatjar在eclipse环境下的安装和使用 图4 fatjar在线安装
4.点击next,next,next,勾选同意协议,等待进度条,重启Eclipse,安装完成,如图5所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图5 等待安装 最后一步安装时,出现错误的原因:1.eclipse程序,jdk包,fatjar包需要放在英文目录下,否则,容易出现无法识别中文字符的问题。 重启完成后,选择想要打包成jar包的工程文件夹,右键点击FatJar...选择需要打包的文件,选择目标文件夹,选定Main方法,选择要打包的jar库文件,生成jar文件,将配置文件等未打包的文件复制到同一目标文件夹内即可。 5.建立一个工程DemoLib,其中写一个类Lib,包含一个static方法Hello(),再建立一个工程Demo,其中写一个类Main,类里有一个main方法。 6.将DemoLib工程采用fatjar打包,如图6、7所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图6 Build Fat Jar 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图7 DemoLib.jar配置 7.将DemoLib.jar包复制到Demo工程目录下,如图8所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图8 copy jar包 8.将jar包配置到工程中,如图9所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图9 建立jar包关联 9.在工程DEMO的Main类的main方法中增加Lib.Hello()的调用,执行main方法,得到结果。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图10 调用Lib类的方法并运行 10.用fatjar工具继续打包DEMO类,指定主方法所在的类(这部和前面打包不同,多一步,如图11所示),通过cmd调用java -jar demo.jar,执行程序,如图12所示。 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图11 指定main方法所在的类 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
图12 cmd运行demo.jar包

【源代码】

//Main.java
public class Main {
public static void main(String[] args) {
System.out.println("HELLO");
Lib.Hello();

}
}
//Lib.java
public class Lib {
public static void Hello(){
System.out.println("Hello Jar!");
}
}
工程路径
DEMO ------src ------Main.java ------DemoLib_fat.jar ------demo.jar--本工程生成
DemoLib ------src------Lib.java------DemoLib_fat.jar--本工程生成