目录

  • 引言
  • 一、使用systemPath导入
    • (一)将jar包复制到指定文件夹
    • (二)在pom文件中引入jar包
    • **这里有一个超级大的坑,就是systemPath不支持聚合工程的父子传导!!!**
    • **不支持pom工程的继承关系!!!不支持,重要的话说三遍**
    • (三)编译后使用
  • 二、使用maven命令导入
    • (一)判断你使用的是idea自带的maven还是自己安装的maven
    • (二)maven命令
    • (三)xml文件中引入依赖
  • 总结

引言

在使用Maven的时候,如果拉取远程仓库失败,报错Dependency ‘XXX’ not found,或者公司有一些自己开发的jar包需要手动导入的,可以采用以下方法手动导入

一、使用systemPath导入

(一)将jar包复制到指定文件夹

maven项目一般会这个文件夹:scr/main/resources/lib
将你所需要的jar包复制到这里

(二)在pom文件中引入jar包

 <dependency><groupId>com.cnm.acco</groupId> <!-- 自定义名称 --><artifactId>acco-common</artifactId> <!-- jar包名称 --><version>1.0.0-SNAPSHOT</version> <!-- jar包版本 --><scope>system</scope> <!-- 依赖范围 --><systemPath>${project.basedir}/src/main/resources/lib/acco-common-1.0.0-SNAPSHOT.jar</systemPath> <!-- pom.basedir表示当前pom文件根目录 --></dependency>

注意:使用systemPath引入jar包时,scope标签一般是system,表示作用于编译和打包时期

这里有一个超级大的坑,就是systemPath不支持聚合工程的父子传导!!!

不支持pom工程的继承关系!!!不支持,重要的话说三遍

因为我导的包很多子工程都会用到,所以导入时,我直接向父工程导入,指望可以作用于子工程,结果全漏了。。。只能往子工程里面一个个导入哈,记住大坑!!!

(三)编译后使用


注意:如果某个子工程引入了这个jar包,那么其他子工程可以通过引入它来使用手动引入的jar包

二、使用maven命令导入

(一)判断你使用的是idea自带的maven还是自己安装的maven


如果使用的是自己安装的maven,在安装时本机应该配置了maven的环境变量,打开终端直接执行maven命令即可如果是这种,你使用的就是idea自带的maven,需要这样输入maven命令注意:如果是自己安装的maven,也可以这样输入maven命令,只是idea自带的maven在安装包内,比较难找,东西其实都是一样的,文件位置不一样罢了,熟悉的都可以操作,就算不配置环境变量,找到文件夹位置,打开终端也可以输入maven命令

(二)maven命令

mvn install:install-file -Dfile=/Users/wenjie/Downloads/fastjson-2.0.5.jar -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=2.0.5

  • -Dfile 指的是jar包位置,jar包文件可以下载到任何你喜欢的位置
  • -DgroupId 指的是xm文件的groupId标签
  • -DartifactId 指的是xml文件的artifactId标签
  • -Dversion 指的是xml文件的version标签,也就是版本

(三)xml文件中引入依赖

例如我使用了以上的命令手动导入jar包,那么在对应的pom文件中,我需要引入的dependeny就如下:

<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>2.0.5</version>
</dependency>

注意不能出错,如果maven命令和xml文件的对应关系弄错了,会导致xml文件报错,不能正确引入依赖

总结

使用systemPath引入jar包的好处是,直接将jar包复制到项目中,比较快捷,修改几行xml即可,缺点是,不支持聚合工程的继承关系,如果许多子工程都需要使用这个依赖,那么需要多次引入或者复制多个jar包到对应的子工程,不够优雅。
使用maven命令引入jar包的好处是,支持聚合工程,可以用父工程来管理maven的依赖关系,子工程在xml中添加对应的依赖则都可以使用,缺点是你的每一个同事都要执行对应的maven命令,你要把引入命令发送给他们,否则他们的xml文件会报错,或者他们在打包项目的时候会报jar包无法找到的问题。

总之,这两种解决方式没有更完美的,只能够根据事实情况选择更合适的解决方式。

手动引入jar包,解决Dependency ‘XXX‘ not found的两种方式相关推荐

  1. windows jar包按钮启动和开机自启两种方式实现

    第一种 按钮启动 jar文件 放到 D 盘根目录下,或自定义. 新建 启动.bat,位置随便,最好放到桌面,内容如下: start javaw -jar D:\plc-xz-0.0.1-SNAPSHO ...

  2. IDEA手动引入jar包方式

    IDEA手动引入jar包 第一种方式,使用idea自带的功能引入.注意本地开发可以,但项目打成jar包时因未添加进去导致打包报错或打包成功启动失败 最后一次性选择(选中第一个,按住shift键,点击最 ...

  3. Burp Suite抓取安卓手机微信小程序数据包(HTTPS) 主机有线/无线连接两种方式

    主机有线连接 1.电脑放热点,然后用手机连接热点. 2.手机连接该热点,在电脑的移动热点-设置中可以看到连接的设备. 3.查看电脑无线网络的IP地址,cmd-ipconfig-无线局域网适配器 本地连 ...

  4. 【IDEA】向IntelliJ IDEA创建的项目导入Jar包的两种方式

    今天用IDEA,需要导入一个Jar包,因为以前都是用eclipse的,所以对这个idea还不怎么上手,连打个Jar包都是谷歌了一下. 但是发现网上谷歌到的做法一般都是去File –> Proje ...

  5. Maven 手动安装JAR包到本地maven仓库后,但在项目中依旧报错找不到JAR包解决方法

    Maven 手动安装JAR包到本地maven仓库后,但在项目中依旧报错找不到JAR包解决方法 参考文章: (1)Maven 手动安装JAR包到本地maven仓库后,但在项目中依旧报错找不到JAR包解决 ...

  6. Maven工程引入jar包(转)

    Maven项目引入jar包的方法,希望能帮助有需要的朋友们 法一.手动导入:项目右键->Build Path->Configure Build Path->选中Libraries-& ...

  7. Maven 引入Jar包的几种情况

    Maven 引入Jar包的几种情况 1.通过pom.xml中导入的jar包 (1)链接打开http://mvnrepository.com/ (2)搜索罐包,比如我想要的是servlet的api.ja ...

  8. Oracle ojdbc6-11.2.0.3.jar下载以及Maven手动安装jar包

    Oracle ojdbc6-11.2.0.3.jar下载以及Maven手动安装jar包 1.下载ojdbc6-11.2.0.3.jar 百度网盘下载地址 提取码:提取码:9es5 2.手动安装ojdb ...

  9. Spring Boot 引入jar 包中的 controller

    [问题] Spring Boot 引入jar 包中的 controller [解决] 默认情况下 Spring Boot 在启动时, 只会扫描启动类对应的包以及子包进行装配, 因此jar包中的cont ...

  10. idea中引入jar包,并通过maven打包

    一.maven引入jar包方式(方便通过maven打包) 找到你idea中使用的maven安装路径,打开maven安装路径,进入bin文件夹,在这个文件夹下进入docs窗口.鼠标点击箭头位置,输入cm ...

最新文章

  1. 怎么做网络推广浅析网站如何设置导航栏可以使网站优化更好?
  2. HTML 表格垂直对齐方式
  3. python xml模块
  4. TCP服务器端和客户端建立连接 - 客户端的回调处理
  5. 用多媒体库 Bass.dll 播放 mp3 [8] - 实时显示左右声道的峰值
  6. mysql hugepage_因未配置Hugepage会话数添增悲剧案例
  7. iOS 数据持久化 NSUserDefault
  8. 快速入门 Pinia 状态管理库
  9. 二叉树 平衡二叉树 红黑树_迅捷树,二叉树
  10. Cocos Creator 实现虚拟摇杆
  11. 如何使用计算机讲解ppt,如何录制PPT讲解视频?
  12. 维生素C对免疫力有什么影响?
  13. 计算机应用基础模拟三答案,《计算机应用基础》模拟试卷三(含答案)
  14. ppt演示文档如何瘦身
  15. Python3.0 如何抓取网页
  16. 计算机考研介绍 ppt,计算机考研大纲.jsp.ppt
  17. 20世纪中文小说100强
  18. 怎么提高App推广效率
  19. 阿里云 SDK 动态IP域名解析
  20. js怎么添加html空格,javascript-在JSX中添加空格的最佳做法

热门文章

  1. 2022年3月17日YYC松鼠短视频v4.2.6更新-增加详细的站点信息统计图表
  2. 抽象类、接口、内部类和枚举
  3. 【微信小程序云开发 云数据库 云函数 云存储】
  4. android CircleIndicator 实现引导页
  5. 为什么边缘概率密度是联合概率密度的积分_解读奥运积分排名:石宇奇为何第13 林丹谌龙未入前16...
  6. sql 大于 小于 大于等于 小于等于 符号
  7. 中国露营、户外和越野拖车市场运行动态与发展趋势分析报告2022-2028年
  8. 阿里云个人网站备案流程
  9. 在线python编程网页-手把手教你用Python写一个在线网站,这真的很装逼!
  10. 智遥工作流连接SAP,查询超时解决方法