在项目中有时候需要引入一些外部jar包,这些jar从中央仓库是找不到的,如果是普通web工程直接将jar放在WEN-INFlib下再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中通过文件方式引用
<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>
其中project.basedir为maven内置属性,共有6类属性:
内置属性(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