Maven项目外部jar包导入的实现示例
作者:棒棒糖的糖不含糖
导语:在Maven项目里,我们经常需要导入jar包依赖,正常情况下我们只需要到Maven仓库(https://mvnrepository.com/)或阿里云仓库(http://maven.aliyun.com/nexus/content/groups/public)里去搜索对应资源,修改pom.xml
文件即可。但是也会出现一些资源在Maven仓库是搜索不到的,这时候就需要引入外部依赖。
一、通过dependency引入
1.1. jar包放置,建造lib目录
1.2. pom.xml文件
<dependency> <groupId>zip4j</groupId> <artifactId>zip4j</artifactId> <version>1.3.2</version> <!--system,类似provided,需要显式提供依赖的jar以后,Maven就不会在Repository中查找它--> <scope>system</scope> <systemPath>${project.basedir}/src/main/resources/lib/zip4j-1.3.2.jar</systemPath> </dependency>
注:project.basedir 是项目的根目录,<systemPath>标签内是jar包放置的路径,标签内容与jar包实际所在位置保持一致即可。
二、将外部jar打入本地maven仓库
2.1. 将jar包放入某不含中文的路径下 ,例如:E:\file\zip4j-1.3.2.jar
2.2. 在jar包所在目录栏中输入cmd,并回车
2.3. 在命令行输入操作命令
mvn install:install-file -DgroupId=zip4j -DartifactId=zip4j -Dversion=1.3.2 -Dpackaging=jar -Dfile=E:\file\zip4j-1.3.2.jar
参数解释:
file : 为你jar包所在的路径(尽量简单并且不要含中文)
groupId : 为grouId号,与组成唯一识别你jar包的坐标,当不在公共资源jar包中, 自己自定义的jar时,可以自定义groupId号。
格式:a.b.c
artifactId : 为artifactId号,与组成唯一识别你jar包的坐标,当不在公共资源jar包中,自己自定义的jar时,可以自定义artifactId号。
格式: a-b-c
version : jar包版本号,也可以自定义
packaging : 包的后缀,一般都是jar
注意:参数顺序可以调整
2.4. 添加成功
出现【BUILD SUCCESS】 说明已经导入成功了,此时可以刷新 项目的Maven ,检测是否可以正常使用。
2.5. pom.xml 导入
<dependency> <groupId>zip4j</groupId> <artifactId>zip4j</artifactId> <version>1.3.2</version> </dependency>
结语:除了以上两种,还有通过新建lib包 ---> 右键 ---> Add as Library .. ---> 确定。
但这种方式只适用于本地练习。打包后放服务器上会报错。
三、 mvn install设置默认安装路径
3.1.问题描述
由上图可知,我已经【BUILD SUCCESS】导入成功了,但是路径不对,我D 盘的Maven仓库是空的,而截图显示的是导入到C 盘的 .m2 默认路径下了。
由 【mvn install】命令可知,在导入命令中,有jar “来”的路径,没有“去”的路径,所以和命令无关,那就去找Maven 本身的设置文件
3.2. 安装位置设置
在Maven 安装路径下的 /conf/settings.xml 文件中,找到下面这部分设置
将【localRepository】标签提出并解开,示例代码如下图所示
指定到镜像这一层就行。我个人的镜像路径如下所示,参考者改为自己的路径就行
修改后,重新导入jar如下图所示
提醒:Settings文件可以修改,只要按照它的提示就行,但是在任何配置中,不要使用中文,以免配置文件读取失败,修改后一定要保存,不保存没用的。
到此这篇关于Maven项目外部jar包导入的实现示例的文章就介绍到这了,更多相关Maven外部jar包导入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!