文章目录
前言1、IDEA打包工具:Artifacts1.1 创建Artifacts1.2 选择第三方jar文件1.3 打包Artifacts1.4 测试jar包
2、maven-shade-plugin2.1、pom文件添加2.2、打包2.3、测试jar包
总结
前言
当我们编写完Java程序后,为了提高执行效率通常会将应用程序打包成JAR(Java Archive)包。JAR包中的类文件经过预编译和优化,可以直接被Java虚拟机(JVM)执行,而无需再次编译。这样可以避免重复的编译过程,减少了启动时间和运行时的开销。 为了保证生成的JAR包可以直接在虚拟机中运行,需要采用带依赖的打包方式。本文提供了两种常用的打包方式:
IDEA自带的打包工具: Artifacts;使用pom引入:maven-shade-plugin进行打包。
1、IDEA打包工具:Artifacts
1.1 创建Artifacts
使用快捷键(Ctrl+Alt+Shift+S)可以快速打开项目的Project Structure。 按照Artifacts==> “+” ==> “JAR” ==> "From modules with dependencies"的顺序
点击Main Class 。在Select Main Class==>Search by Name中选择选择程序的入口函数。 再点击上图的Ok,创建得到的artifacts。
1.2 选择第三方jar文件
通过 “+” 或者 “-” 选择需要打入artifacts的第三方jar文件,如图: Extracted后的JAR包是指从Jar包中提取出来的已经解压的文件,通常包括类文件、资源文件等等。如果没有这些文件,直接运行JarAR包会导致无法加载运行所需的类文件,从而提示类找不到的错误。 选择完第三方Jar文件后,点击Apply和OK,保存配置信息。
1.3 打包Artifacts
在菜单栏目找到Build,选择Build Artifacts。
最后窗口,点击Build们就可以生成JAR包了。
打包后的位置在左侧的out中。
1.4 测试jar包
在jar包位置,右键选择Open in ==> Explorer ; 来到jar包的位置,在上方的地址栏直接输入“cmd” 执行命令:
java -jar
例如:
java -jar emSystem_install_UI.jar
执行结果。
2、maven-shade-plugin
我个人更喜欢使用maven-shade-plugin进行打包。它能够将Java项目打包成可执行的JAR文件,并自动包含所有依赖项,从而无需单独安装和配置所有的依赖项。
2.1、pom文件添加
在pom文件中加入以下内容:
2.2、打包
按照clean==>complie==>package的顺序进行打包。
在左侧会生成target文件,里面就有可以执行的jar文件
补充:使用 maven-shade-plugin 打包的项目被存储在 Maven 项目的 target 目录下,并生成三个文件:
1. “-SNAPSHOT” 后缀的 Jar 包: 原始的 Jar 包。“-SNAPSHOT” 后缀是 Maven 的一种命名规范,用于表示当前版本是一种开发中的、不稳定的版本。 2. “origin” 前缀的Jar包: 是没有经过重命名的依赖 Jar 包。这些 Jar 包通常包含项目依赖的库和框架。 3. “-SNAPSHOT-shaded” 后缀的 Jar 包: 是经过重命名的可运行 Jar 包。这个重命名避免了与其他依赖项名称冲突。在其中的MANIFEST.MF 文件中也包含了正确的主类信息。
2.3、测试jar包
测试的过程与1.4部分同理。建议运行-1.0-SHAPSHOT-shaded.jar结尾的jar包,此处直接展示测试结果。 执行命令:
java -jar
例如:
java -jar emSystem_install_UI-1.0-SHAPSHOT-shaded.jar
执行结果。
总结
介绍了两种打包方法:
IDEA打包工具:Artifactsmaven-shade-plugin插件