Maven项目外部jar包导入的实现示例

 更新时间:2024年08月30日 09:23:59   作者:棒棒糖的糖不含糖  
在Maven项目里,我们经常需要导入jar包依赖,本文主要介绍了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包导入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java适配器模式之万物拟人化

    java适配器模式之万物拟人化

    本文详细介绍了什么是适配器模式,适配器模式的种类以及各种类的详细讲解等,需要学习该知识点的小伙伴可以参考这篇文章
    2021-08-08
  • 新手了解java 集合基础知识

    新手了解java 集合基础知识

    今天小编就为大家分享一篇关于Java集合总结,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧,希望对你有所帮助
    2021-07-07
  • 解决SpringBoot使用yaml作为配置文件遇到的坑

    解决SpringBoot使用yaml作为配置文件遇到的坑

    这篇文章主要介绍了解决SpringBoot使用yaml作为配置文件遇到的坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java实现去重的方法详解

    Java实现去重的方法详解

    austin支持两种去重的类型:N分钟相同内容达到N次去重和一天内N次相同渠道频次去重,这篇文章就来和大家讲讲这两种去重的具体实现,需要的可以参考一下
    2023-06-06
  • 关于Java中的dozer对象转换问题

    关于Java中的dozer对象转换问题

    Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象,这篇文章主要介绍了Java中的dozer对象转换的操作方法,需要的朋友可以参考下
    2022-08-08
  • JDBC利用C3P0数据库连接池连接数据库

    JDBC利用C3P0数据库连接池连接数据库

    这篇文章主要为大家详细介绍了JDBC利用C3P0数据库连接池连接数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • SpringBoot中间件封装限流器的方案详解

    SpringBoot中间件封装限流器的方案详解

    这篇文章主要介绍了SpringBoot中间件封装限流器,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • executor包执行器功能

    executor包执行器功能

    这篇文章主要介绍了executor包执行器功能,executor包中的各个子包提供的功能,最终这些功能都由Executor接口及其实现类共同对外提供服务。下文介绍该执行功能,具有一定的参考价值,需要的朋友可以考一下
    2022-02-02
  • 基于Java的度分秒坐标转纯经纬度坐标的漂亮国基地信息管理的方法

    基于Java的度分秒坐标转纯经纬度坐标的漂亮国基地信息管理的方法

    本文以java语言为例,详细介绍如何管理漂亮国的基地信息,为下一步全球的空间可视化打下坚实的基础,首先介绍如何对数据进行去重处理,然后介绍在java当中如何进行度分秒位置的转换,最后结合实现原型进行详细的说明,感兴趣的朋友跟随小编一起看看吧
    2024-06-06
  • @MapperScan扫描包里混有@Service等问题如何解决

    @MapperScan扫描包里混有@Service等问题如何解决

    这篇文章主要介绍了@MapperScan扫描包里混有@Service等问题如何解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03

最新评论