maven做为一种强大的依赖管理工具,可以帮助我们更方便的管理项目中的依赖;而在使用过程中我们难免会有需要引入本地jar包的需求,这里踩过坑之后我分享俩种引入方式;
1.上传jar到本地maven仓库,再引入
使用此方法后可以将需要引入的jar包安装到本地maven仓库中;然后使用一般方法引入该依赖即可
进入maven的bin目录下,运行cmd后,在命令框输入以下命令:
mvn install:install-file -Dfile=D:\*.*-1.0.jar -DgroupId=*.* -DartifactId=*-* -Dversion=1.0 -Dpackaging=jar
参数说明:
Maven 安装 JAR 包的命令是:
mvn install:install-file
-Dfile=jar包的位置
-DgroupId=pom文件里的groupId
-DartifactId=pom文件里的artifactId
-Dversion=pom文件里的version
-Dpackaging=jar
等待其上传完成之后即可在你的pom中引用你刚刚上传的包了
导入方式:
<dependency> <groupId>上传时定义的groupId</groupId> <artifactId>上传时定义的artifactId</artifactId> <version>上传时定义的version</version> </dependency>
2.通过目录路径引入
在项目的resource文件夹下新建一个lib文件夹,放入需要引入的jar包
使用绝对路径的方式引入
<dependency>
<groupId>xxx</groupId>
<artifactId>xxx</artifactId>
<version>x.xx</version>
<scope>system</scope>
<systemPath>${pom.basedir}/src/mian/resources/lib/xxx.jar</systemPath>
</dependency>
需要注意的是:使用第二种方式导入的jar包,因为scope指定的是system类型,因此打包时并不会被打入到最终的jar中;如果需要和项目一起打包则需要使用springboot的打包插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--设置为true,以便把本地的system的jar也包括进来-->
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
额外注意:该插件可能与其他插件冲突,类似<groupId>org.apache.maven.plugins</groupId>,所以使用其他打包插件时,再用第二种方式,依然不会把外部jar打入到最终的项目jar中;请自行选择需要的方式(我的推荐是使用第一种,如果担心通过git上传后其他程序员拉下来依然无法执行,那么可以使用私库,后面可能我会整理一个私库的搭建教程,所以请多多关注吧)