解决Maven中90%的依赖(导包)问题
今天给大家分享一个非常好用的技巧,这个技巧是一个组合技巧
是的,自从我开始接触了以spring为框架的项目学习后,这个maven导包老是出现问题,每次在这个上面花费好多时间,于是乎打算写一个秘籍出来。
你可能会遇到这样的问题

这玩意咋红了,看人怪吓人的
接下来这个我们来看看有什么解决办法,下面办法将会从简到难进行介绍
一.你是不是没有reload?
首先我们得知道,在maven所带的.pom文件中修改项目配置后,需要reload的一下,也就是刷新,让它重新接受你的修改后的文件。
具体刷新主要两种方法,如下图
第一种,侧边栏maven管理来进行reload:

第二种,右键点击修改后.pom文件任意处,根据下图来reload:

如果不爆红了,说明是没有刷新的问题。若是没解决,请看第二招
二.配置环境有问题吗?
这种招式主要用于运行别人写的项目。由于每个人的Maven环境都不一样,于是乎,你需要修改一下maven环境配置
点击File-->Settings ,按照下图搜索Maven。

其中黄色框框里就是你要修改的东西,若你拿的别人的项目,通常情况下其路径你会发现看不懂,例如“我的电脑上没有F:盘,为啥路径上有”...
此时你就需要将Maven改为你自己的路径,这个大家配环境的时候都配过,我就此不再赘述。
三.网络不好导致下不了包
这种问题确实存在,我经常遇到。为了下载Maven的包,我还专门买了张流量卡开热点(你们别学我,换个好一点的网络就行) 但必须注意下面情况:
但是还有一种特殊情况,就是由于maven所下载的依赖都是需要在远程仓库上进行,而这玩意服务器在国外,距离太远了访问起来确实很慢
好在阿里帮我们解决了这个问题,它相当于把远程仓库中的东西复制了一分,到自己的仓库,我们只需要将maven配置阿里镜像即可。我们来配置一下:
首先找到你的Maven文件下的conf文件,找到setting.xml文件

使用编辑器打开文件,找到 标记然后将下面内容拷贝替换原来的 标记以及标记内的所有内容,这样就配置好了。
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
然后根据第二招配置一下
四.重启IDEA
这个也好用,因为可能IDEA会卡,所以它会“误报”错误。也就是说,他看起来红红的,实际上都没问题,这个时候重启IDEA可能会解决问题。
五.手动导包
这招是基于上述几种方法都无法解决而使用的,其实你搜手动导报搜出来一大堆,说明白的没几个,今天我给大家分享一下:

这种方法适用于各种Dependency not found,主要是有点麻烦。

手动导包分两步
- 第一步:下载你需要的Jar包
- 第二步:导入你的项目中
第一步:下载你需要的Jar包
https://mvnrepository.com/ 网站你可以搜到你想要的jar包,非常好用

选择版本后,你需要参考下图下载jar包(一定要知道下载到哪了)

第二步:导入你的项目中

还是原本的步骤
在黄框里输入下载命令(注意:你打开输入栏可能会有mvn字样,删了),我这随便找的例子:
mvn install:install-file
-Dfile=D:\Environment\Maven\repository\guava-32.1.2-jre.jar
-DgroupId=com.google.guava
-DartifactId=guava
-Dversion=32.1.2-jre
-Dpackaging=jar
指令说明:
- -Dfile= jar 在本地的绝对路径
- -DgroupId= jar 包的 groupId
- -DartifactId= jar 包的 artifactId
- -Dversion= jar 包的 version
- -Dpackaging= 打包方式
当然.pom文件中的dependency该咋写就咋写,根据上面代码中的对应起来
记住要reload刷新一下
电脑卡了刷新完还得重启一下哦!
解决Maven中90%的依赖(导包)问题的更多相关文章
- 解决 vscode 中 nuget 插件无法获取包版本的问题
解决 vscode 中 nuget 插件无法获取包版本的问题 1.问题描述 大概在今年的7月份左右,我忽然发现 NuGet Package Manager 拓展没法正常使用了,只能查询到包: 选完包之 ...
- maven中import scope依赖方式解决单继承问题的理解
在maven多模块项目中,为了保持模块间依赖的统一,常规做法是在parent model中,使用dependencyManagement预定义所有模块需要用到的dependency(依赖) <d ...
- 二、Spring Boot 中maven中dependencies所有的jar包都报红,install报错(https://repo.maven.apache.org/maven2): Not authorized , ReasonPhrase:Authorizatio
问题一:现象:打开SpringBoot项目后,所有依赖包都报红色波浪线 1.install报错(https://repo.maven.apache.org/maven2): Not authorize ...
- idea本地Maven仓库不能下载依赖jar包的解决方案
1.确认maven是否正正常安装,是否配置了环境变量,可以通过命令 mvn -version 看是否显示maven的版本信息. 2.检查maven的setting.xml配置文件中本地仓库位置配置是否 ...
- maven 中的工程依赖和层级依赖?
一.什么是工程依赖? 思考问题?1.1一旦开始分模块开发的时候,之前的所有包都会被拆分成一个一个的项目 model mapper service ... 其实mapper需要model的支持,怎么解决 ...
- 解决Maven引用POI的依赖,XSSFWorkbook依旧无法使用的问题
Java项目,导入Excel数据功能,第一次使用POI,一开始就遇到了小麻烦! Maven项目引用POI的jar包 <!-- https://mvnrepository.com/artifact ...
- IDEA中如何设置自动导包
IDEA跟eclipse还是有一些差别,一些东西要自己去设置,但同时也还是有快捷键的方式来帮助我们 1.如何设置自动导包:如下图所示 点击FIle--->settings 其次还可以通过按快捷键 ...
- 【Maven】从Maven中导出项目依赖的Jar包
从SVN上下载源代码 svn export https://10.200.1.201/xxxx/PLATFORM code/ --force --username xxx --password xxx ...
- 解决maven中某些依赖无法下载,手动安装Maven依赖
<!--先下载jar包,然后在仓库中手动安装,下面是遇到的两个例子--> <!--第一个--> mvn install:install-file -Dfile=D:\kaptc ...
- Maven中手动引用第三方jar包
有些jar包在Maven库中并不支持,但我们又需要.所以就必须手动引入. 可分为三步完成: 1 ,在项目目录下创建Lib,把引入的jar包加入. 2.在pom.xml中引入dependences. 如 ...
随机推荐
- C++之函数的分文件编写
从黑马程序员的c++课里学到的函数的分文件编写 函数的分文件编写 作用:让代码结构更加清晰 函数分文件编写一般有4个步骤 1,创建后缀名为.h的头文件 2,创建后缀名为.cpp的源文件 3,在头文件中 ...
- 【python】调用钉钉机器人发起通知
有时候需要做个某些服务的状态监控,用钉钉机器人发通知挺方便的.可以用shell脚本配合crontab检测状态,检测到异常就调用python脚本发起告警. python内容 此处用的python3,需要 ...
- 一文理解GIT的代码冲突
对于GIT,不知道有没有人和我一样,很长时间都是小心翼翼.紧张兮兮,生怕一不小心,自己辛苦写的代码没了. 特别是代码冲突,更是难到我无法理解,每次都要求助于百度,跟着人家的教程一步步解决,下一次还是这 ...
- 基于C#的消息处理的应用程序 - 开源研究系列文章
今天讲讲基于C#里的基于消息处理的应用程序的一个例子. 我们知道,Windows操作系统的程序是基于消息处理的.也就是说,程序接收到消息代码定义,然后根据消息代码定义去处理对应的操作.前面有一个博文例 ...
- 《CTFshow-Web入门》03. Web 21~30
@ 目录 web21 题解 原理 web22 题解 原理 web23 题解 原理 web24 题解 原理 web25 题解 原理 web26 题解 web27 题解 web28 题解 web29 题解 ...
- Redis的五大数据类型的数据结构
概述 Redis底层有六种数据类型包括:简单动态字符串.双向链表.压缩列表.哈希表.跳表和整数数组.这六种数据结构五大数据类型关系如下: String:简单动态字符串 List:双向链表.压缩列表 ...
- legend的用法
常规使用legend的方法 1. 自动检测 设置title的label标签,随后使用不带参数的legend函数也会自动显示(但不限于一种方式设置图形的label,只要设置了图形的label,使用leg ...
- 重要变更 | Hugging Face Hub 的 Git 操作不再支持使用密码验证
在 Hugging Face,我们一直致力于提升服务安全性,因此,我们将对通过 Git 与 Hugging Face Hub 交互时的认证方式进行更改.从 2023 年 10 月 1 日 开始,我们将 ...
- iOS越狱后必装软件
iOS越狱后就跟ubuntu没两样了,很多ubuntu下常用的软件都要装一下 openssh 这个软件可以让我们能够登录iphone Apt-get 用这个软件可以安装很多软件,主要是一些工具调试类软 ...
- Eclipse修改Web项目名称
Eclipse修改Web项目名称需要两步: 1:修改该项目目录下:.project文件 <projectDescription><name>SpringMVC-Annotati ...