利用assembly.xml,打包maven项目

打包插件maven-assembly-plugin使用

1.     maven -jar- plugin 打出来是jar包,maven -war- plugin 打出来是war包。


<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-jar-plugin</artifactId> ----打jar包
	<version>2.4</version>
	<configuration>
			<excludes>--排除classpath下文件
			<exclude>**/*.properties</exclude>
			<exclude>**/*.xml</exclude>
			<exclude>META-INF/**/*</exclude>
			</excludes>
	</configuration>
</plugin>

2.   自定义格式包assembly.xml, maven-assembly-plugin打包插件

<plugin>
	<artifactId>maven-assembly-plugin</artifactId>
	<configuration>
<descriptor>src/main/assembly/assembly.xml</descriptor>--assembly.xml 路径
	</configuration>
	<executions>
		<execution>
			<id>make-assembly</id>
			<phase>package</phase>
			<goals>
					<goal>single</goal>----只运行一次
			</goals>
		</execution>
	</executions>
</plugin>


<assembly>
	<id>assembly</id>---名字
	<formats>
		<format>tar.gz</format>--打包格式
	</formats>
	<includeBaseDirectory>true</includeBaseDirectory>
	<fileSets>
		<fileSet>
			<directory>target/classes/META-INF/conf</directory>这个路径				<outputDirectory>conf/META-INF/conf</outputDirectory>--输出到这个路径下
			<fileMode>0644</fileMode>---linux权限
		</fileSet>
			<directory>target/classes</directory>--这个目录下,不会遍历下层目录
			<outputDirectory>conf</outputDirectory>
			<fileMode>0644</fileMode>
			<includes>--只负责这些目标文件
				<include>*.properties</include>
				<include>*.xml</include>
			</includes>
		</fileSet>
	</fileSets>
	<dependencySets>
		<dependencySet>
			<outputDirectory>lib</outputDirectory>---输出到lib路径
		</dependencySet>
	</dependencySets>
</assembly>


猜你喜欢

转载自blog.csdn.net/xiaojiahao_kevin/article/details/53337268