maven pom进阶教程 - 依赖库拷贝插件maven-dependency-plugin

官方资料http://maven.apache.org/plugins/maven-dependency-plugin/
当项目很大时,若是将全部的依赖都打包到war包或jar包中,会致使这个文件很大,而不少状况下,依赖的库是不须要改变的。解决方法是将依赖的库放在单独的目录中,在执行java命令时,将它们加入到classpath。
插件的用法示例以下html

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-dependency-plugin</artifactId>
	<version>3.0.0</version>
	<executions>
		<execution>
			<phase>package</phase>
			<goals>
				<goal>copy-dependencies</goal>
			</goals>
			<configuration>
				<excludeScope>provided</excludeScope><!--若是<includeScope>与<excludeScope>同时出现,<excludeScope>将被忽略-->
				<outputDirectory>${project.basedir}/target/lib</outputDirectory>
				<overWriteReleases>false</overWriteReleases>
				<overWriteSnapshots>false</overWriteSnapshots>
				<overWriteIfNewer>true</overWriteIfNewer>
			</configuration>
		</execution>
	</executions>
</plugin>

须要注意的是,若是<includeScope>与<excludeScope>同时出现,<excludeScope>将被忽略
这个插件中的scope的含义与dependency中的scope含义是有差异的,好比<includeScope>compile</includeScope>是指包含compile、provided、system。 具体介绍看官方文档https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.htmljava

相关文章
相关标签/搜索