前言
对于Maven项目,不需要使用IDEA的jar包导出功能,直接package就行。
创建Artifacts


选择打包类型为jar
配置MainClass

MainClass为jar运行的启动类,包含main方法。

也会自动生成MANIFEST.MF文件,可以看做jar包的描述文件,MainClass也是配置在此文件中的。
构建Artifacts


生成的jar包如下

生成jar包中的MANIFEST.MF文件内容为
Manifest-Version: 1.0
Main-Class: com.imooc.first.TestJarRun
运行jar包
java -jar testjarrun.jar
java会自动查找META-INF/MANIFEST.MF文件中的MainClass类来运行。