您的位置:首页 > 其它

Maven项目打包的方式

2018-02-01 17:11 381 查看
使用maven-jar-plugin和maven-dependency-plugin插件打包

maven-jar-plugin用于生成META-INF/MANIFEST.MF文件

maven-dependency-plugin插件用于将依赖包拷贝到outputDirectory指定的位置

在项目pom.xml下面添加插件并配置

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.example.dds.DdsMain</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.0.2</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>


需要修改下jar默认运行的主类,修改mainClass即可。

使用maven-shade-plugin插件打包

通过 maven-shade-plugin 生成一个 uber-jar,它包含所有的依赖 jar 包

在项目pom.xml下面添加插件并配置

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.asiainfo.dds.DdsMain</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>


同样的,修改一下启动的主类即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: