概述
上下文背景如下:
- war包项目:原理上其他项目也OK,但是暂时没有测试。
- 依赖本地包:出于安全考虑或者没有本地仓库又不想将依赖的jar包发布到公共仓库。
依赖过程
添加依赖
<dependency>
<groupId>com.XXX.XXX</groupId>
<artifactId>XXX</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/XXX.jar</systemPath>
</dependency>
修改构建过程
仅添加依赖只能让IDE识别,maven并不会在打包过程中将依赖的jar包加入到最终的war包中,此时我们需要修改打包构建的过程,使maven能在构建过程中帮我们把jar包拷贝到最终的war包中。
我们依赖maven官方插件 maven-dependency-plugin 来帮忙达到这个目的,具体配置如下:
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>compile</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/lib</outputDirectory>
<includeScope>system</includeScope>
</configuration>
</execution>
</executions>
</plugin>
参考
建议看官方文档,网上的博客有点乱:
http://maven.apache.org/components/plugins/maven-dependency-plugin/