在项目中有时候需要引入一些外部 jar 包,这些 jar 从中央仓库是找不到的,如果是普通 web 工程直接将 jar 放在 WEN-INF\lib 下再 add build to path 就行了,但是 maven 项目这么做是行不通的,maven 项目的 jar 包都是通过 maven 机制进行管理的,自己通过 build path 将 jar 引进去,写代码时没问题,但是调试或者发布就会出现问题,那么解决的方式有如下几种:
1) 将 jar 包上传至 maven 私服,pom.xml 引用即可
在 dos 执行命令:mvn install:install-file -DgroupId=xx -DartifactId=xx -Dversion=xxx -Dpackaging=jar -Dfile=xxx.jar
2) 如果没有建私服,可以在 pom.xml 中通过文件方式引用
其中 project.basedir 为 maven 内置属性,共有 6 类属性:
<dependency>
<groupId>gdal</groupId>
<artifactId>gdal</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/xxx.jar</systemPath>
</dependency>
内置属性 (Maven 预定义, 用户可以直接使用)
${basedir} 表示项目根目录, 即包含 pom.xml 文件的目录;
${version} 表示项目版本;
${project.basedir} 同 ${basedir};
${project.baseUri} 表示项目文件地址;
${maven.build.timestamp} 表示项目构件开始时间;
${maven.build.timestamp.format} 表示属性 ${maven.build.timestamp} 的展示格式, 默认值为 yyyyMMdd-HHmm, 可自定义其格式, 其类型可参考 java.text.SimpleDateFormat.
本文参考:https://www.cnblogs.com/king1302217/p/5829672.html
来源: http://www.bubuko.com/infodetail-2456940.html