方法一:使用插件maven-shade-plugin
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>util.Microseer</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
这样打出来的包ToolHelper-0.0.1-SNAPSHOT.jar和original-ToolHelper-0.0.1-SNAPSHOT.jar
original-是原始包就是不含第三方jar的,另一个是含第三方jar的
方法二:使用插件maven-assembly-plugin
<!-- maven 打包插件 打原始jar包 第三方依赖打入jar包中-->
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<!--这里要替换成jar包main方法所在类 -->
<mainClass>com.baizhi.RDDDataSourceWithHBase</mainClass>
</manifest>
<manifestEntries>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- 指定在打包节点执行jar包合并操作 -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
这样打出来的包:ToolHelper-0.0.1-SNAPSHOT-jar-with-dependencies.jar和ToolHelper-0.0.1-SNAPSHOT.jar
jar-with-dependencies是包含第三方的jar,另一个是不含的!
方式三:
1、从主菜单中,选择file| 项目结构 Ctrl+Shift+Alt+S,然后单击Artifacts。
2、 单击添加按钮("+"),指向JAR,然后选择from Modules and depelence。
3、在“ main class”字段的右侧,单击文建按钮
4、浏览按钮并在打开的对话框中选择主要类(例如,HelloWorld(com.example.helloworld))。
5、IntelliJ IDEA创建项目配置,并在“ 项目结构”对话框的右侧显示其设置。
6、应用更改并关闭对话框。
构建JAR工件
1、从主菜单中,选择Build | 建立Artifacts。
2、指向创建的.jar(HelloWorld:jar)并选择 Build。如果现在查看out / artifacts文件夹,则将在其中找到您的.jar文件。
参考原文 :https://www.jetbrains.com/help/idea/packaging-a-module-into-a-jar-file.html