<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<archive>
<manifest>
<mainClass>启动类</mainClass>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
</manifest>
<manifestEntries>
<Class-Path>./</Class-Path>
</manifestEntries>
</archive>
<excludes>
<exclude>config/**</exclude>
<exclude>lib/**</exclude>
<exclude>*.yml</exclude>
<exclude>*.xml</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/main/resources/build/package.xml</descriptor> 额外的配置
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase> <!--在打包的时候执行-->
<goals>
<goal>single</goal> <!--执行一次-->
</goals>
</execution>
</executions>
</plugin>
package.xml 打包描述文件
<?xml version="1.0" encoding="UTF-8"?>
<assembly>
<id>bin</id>
<!-- 最终打包成一个用于发布的zip文件 -->
<formats>
<format>zip</format>
</formats>
<!-- 把项目中的依赖打包到lib文件夹下 -->
<dependencySets>
<dependencySet>
<!--
不使用项目的artifact,第三方jar不要解压,打包进zip文件的lib目录
-->
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>lib</outputDirectory>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
<fileSets>
<!-- 把项目相关的说明文件,打包进zip文件的根目录 -->
<fileSet> <!--${porject.basedir 项目根目录}-->
<directory>${project.basedir}</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>README*</include>
<include>LICENSE*</include>
<include>NOTICE*</include>
</includes>
</fileSet>
<!-- 把项目的配置文件,打包进zip文件的config目录 -->
<fileSet>
<directory>${project.basedir}/src/main/resources</directory>
<outputDirectory>con</outputDirectory>
<includes> <!--包含哪些文件-->
<include>logback-spring.xml</include>
<include>config/*.properties</include>
<include>*.yml</include>
</includes>
<excludes> <!--不包含哪些文件-->
<exclude>application*.yml</exclude>
</excludes>
</fileSet>
<!-- 把项目的脚本文件目录( src/main/scripts )中的启动脚本文件,打包进zip文件的跟目录 -->
<fileSet>
<directory>${project.basedir}/src/main/resources/build/script</directory>
<outputDirectory>bat</outputDirectory>
<includes>
<include>*.bat</include>
</includes>
</fileSet>
<!-- 把项目自己编译出来的jar文件,打包进zip文件的根目录 -->
<fileSet> <!--${project.build.ditectoty} 相当于target文件-->
<directory>${project.build.directory}</directory>
<outputDirectory></outputDirectory>
<includes>
<include>*.jar</include>
</includes>
</fileSet>
</fileSets>
<!-- 将项目的主配置重命名 -->
<files>
<file>
<source>${project.basedir}/src/main/resources/application-${env}.yml</source>
<outputDirectory>/</outputDirectory>
<destName>application.yml</destName>
</file>
</files>
</assembly>