【idea与maven】idea创建springboot项目,maven 远程仓库,一部分包显示红色,jar包导入不进来(包含maven 的下载和配置)
idea创建springboot项目,maven 远程仓库,一部分包显示红色,红色jar包导入不进来
idea创建springboot项目,maven 远程仓库,一部分包显示红色,jar包导入不进来
问题描述
创建springboot项目,maven 远程仓库,一部分包显示红色,导入不进来,真得很崩溃,有的包能导进来,有的包导不进来。查看dependency依赖,只有 jdk的包存在。
先了解一下 Maven 仓库
仓库分类:
中央仓库: 由Maven团队维护的全球唯一的仓库
地址: https://repo1.maven.org/maven2/
本地仓库: 自己计算机上的一个目录(推荐)
远程仓库(私服): 一般由公司团队搭建的私有仓库。我们只学习远程仓库的使用,不搭建。
当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:
如果有,则在项目直接引用;如果没有,则去中央仓库中下载对应的jar包到本地仓库。
解决方案:
方案一:
按照网友说法,在自动生成的本地maven仓库 ( C:\Users\Administrator.m2 |maven的默认路径在用户目录的.m2文件夹里面,当maven本地依赖比较多的时候,会造成C盘文件较大,需要修改maven的本地仓库的路径) 下创建 settings.xml文件,添加 阿里云镜像 还是不行。
方案二:
安装本地maven仓库,然后修改 idea配置,clean一下就可以顺利导入jar包了。
Maven配置与安装:
1.下载Maven
官方下载地址: 官网:https://maven.apache.org/ 下载完毕,直接进行解压。
根据需求选择下载,win下载zip,linux下载tar,下面两个是源码
解压,创建 maven 文件夹,然后将解压文件放进去
- bin:保存Maven的可执行命令,mvn和mvn.bat就是执行Maven工具的命令。
- boot:该目录只包含一个plexus-classworlds-2.5.2.jar,plexus-classworlds-2.5.2.jar是一个类加载框架。
- conf:保存Maven配置文件的目录,该目录包含setting.xml文件,该文件用于设置Maven的全局行为。
- lib:该目录包含了所有Maven运行时需要的类库,此外,还包含Maven所依赖的第三方类库。
- LICENSE、README.txt等说明文档。
2.配置环境
此电脑–>属性–>高级系统设置–>环境变量–>系统变量–>新建
此电脑–>属性–>高级系统设置–>环境变量–>系统变量–>点击path–>新建
3.测试Maven是否配置(安装)成功
Winds+R进入cmd 输入mvn -v 如果输出maven的版本号,说明安装成功.(这里 runtime 为 jdk 下的jre目录是正确的,不是jdk 下的是不能使用的,解决方法参考另一篇 https://blog.csdn.net/weixin_45447134/article/details/132023379?spm=1001.2014.3001.5502)
4.配置本地仓库
找到Maven下的settings.xml
D:\Installed\Maven\apache-maven-3.6.1\conf\settings.xml(自己存放Maven的路径)
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>本地仓库地址,随便建个文件夹就好</localRepository>
-->
<localRepository>D:\Installed\Maven\apache-maven-3.6.1\Repository</localRepository>
找到标签,将内容改为自己想存贮的本地仓库
5.阿里云镜像
在<mirrors>
标签内加入
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<!-- mirror
| Specifies a repository mirror site to use instead of a given repository. The repository that
| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
|
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror>
-->
即完成
6.配置 jdk
在<profiles>
标签内加入
<!-- java jdk1.8版本 -->
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
7.修改idea配置
注意打对钩部分。
8.像源生效
拉取编译或者同步时显示路径中包含aliyun.com的url则表示完成配置
Downloading from alimaven: http://maven.aliyun.com/nexus/content/repositories/central/org/jetbrains/......
特殊情况处理
由于使用了HTTPS,存在着SSL证书验证的问题,因此需要在IDEA中添加配置来忽略SSL证书的验证
下载过程中虽然显示已经配置过阿里云的镜像,但是新版本的阿里云镜像不再支持http下载,只支持https下载,再次做出修改配置
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true
更多推荐
所有评论(0)