一、SRC
有些场景下,有些jar本地有但没法从远程仓库下载,此时可以直接通过build path的方式加到项目中,但这些jar并不能通过maven的打包命令打到项目jar中。此时可以把本地jar通过pom导入到项目中,然后通过<resource>
打包到项目jar中。
二、usage
1. 通过pom引入本地依赖
{1} scope必须是system,否则<systemPath>
报错
{2} <systemPath>
中的目录层级分隔符必须是 /
,别的报错
{3} gav都可以自己随便写
<dependencies>
<dependency>
<groupId>poi</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
<scope>system</scope>
<systemPath>D:/idea_projects/excel2hive/lib/commons-codec-1.10.jar</systemPath>
</dependency>
</dependencies>
此时IDE中已经可以使用本地jar了,但打包时不会打包进去,还要进一步设置
2. 在build/resources中设置
{1} directory是本地jar的位置,一般都是当前module下的lib,直接写lib相当于${project.basedir}/lib
(亲测,写成lib1就打不进去了),是maven的内置属性,可以通过<properties>
来设置自定义属性,用${}来取
{2} targetPath是用来设置在打包的jar中本地jar的存放路径,BOOT-INF可以自定义,表示在jar类路径下
**/*表示所有的
<build>
<resources>
<resource>
<directory>lib</directory>
<targetPath>BOOT-INF/lib</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</resources>