前言

之前的那台电脑在创建maven项目时失败,报的错误的大致中文意思是无法获取maven某个插件的元数据文件,例如问题can't resolve maven-metadata-central.xml最终采用这篇博客里的方法也就是设置maven运行时参数

-Dmaven.multiModuleProjectDirectory=$MAVEN_HOME
-Dmaven.wagon.http.ssl.insecure=true
-Dmaven.wagon.http.ssl.allowall=true
-Dmaven.wagon.http.ssl.ignore.validity.dates=true

问题的原因是maven在网站上下载依赖时jdk会检查网站安全证书,因证书问题从而导致依赖下载失败,进而无法创建项目。这样设置参数可以使其忽略证书检查.

之后换新电脑,创建maven项目再次出现老问题,设置参数却不管用,经过一番摸索和查阅资料再次解决问题,特此记录解决思路以及自己的解决办法

解决方案

分析思路

使用ide创建maven项目,影响项目创建的因素一般有这几个

一、ide设置

像idea往往自带maven,创建项目时注意使用的是自己下的maven还是ide自带的;
每个人的ide的设置可能都不一样,尤其是有时会对网络进行设置,如果不清楚是不是网络设置的问题建议还原设置。这里使用的是IE创建maven项目,不是IJ,使用IJ创建的也可以参考

二、网络

查阅诸多资料,根据前辈们的经验汇总,电信、移动、联通的网在下载依赖时可能有的成功有的不成功,个人使用移动网、联通网暂时没出现问题

三、maven配置

c盘用户名目录下.m2文件夹往往是默认的maven配置文件夹,里面还存在默认的maven仓库。
.m2文件夹下有settings.xml,一般用来配置maven,常用的就是配置仓库,可能有的人无法直接使用默认maven中央仓库去下载依赖,从而导致失败,这时可以设置为国内的镜像仓库,下面附一份相对比较全的仓库配置

<mirrors><!--    配置阿里云maven私有仓库(即配阿里私服)--><mirror><id>alimaven</id><mirrorOf>*</mirrorOf><url>https://maven.aliyun.com/repository/central</url></mirror> <mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/repositories/central</url></mirror> <mirror>  <id>aliyun_maven</id><mirrorOf>*</mirrorOf><name>public_repository_in_China</name><url>https://maven.aliyun.com/repository/public</url></mirror> <mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/repositories/central/</url></mirror><mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror><!-- oschina 仓库 --><mirror><id>osc</id><mirrorOf>central</mirrorOf><url>http://maven.oschina.net/content/groups/public/</url></mirror><mirror><id>osc_thirdparty</id><mirrorOf>thirdparty</mirrorOf><url>http://maven.oschina.net/content/repositories/thirdparty/</url></mirror><!-- maven中央仓库在中国的镜像 --><mirror><id>maven.net.cn</id><name>oneof the central mirrors in china</name><url>http://maven.net.cn/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror> <!-- maven的其他仓库 --><mirror> <id>central-maven</id><name> maven</name><url>http://central.maven.org/maven2</url><mirrorOf>central</mirrorOf></mirror> <mirror><id>central</id><name>Maven Repository Switchboard</name><url>http://repo1.maven.org/maven2/</url><mirrorOf>central</mirrorOf></mirror><mirror><id>repo2</id><mirrorOf>central</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://repo2.maven.org/maven2/</url></mirror><!-- 其他系列仓库 --><mirror><id>ibiblio</id><mirrorOf>central</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url></mirror><mirror><id>jboss-public-repository-group</id><mirrorOf>central</mirrorOf><name>JBoss Public Repository Group</name><url>http://repository.jboss.org/nexus/content/groups/public</url></mirror><mirror><id>google-maven-central</id><name>Google Maven Central</name><url>https://maven-central.storage.googleapis.com</url><mirrorOf>central</mirrorOf></mirror></mirrors>

这个仓库设置非常常见但对创建项目失败这种问题并不一定有效

四、jdk版本

本人一共用过三个系列的的jdk:oracle jdk、openjdk、graavlm-ce-jdk
之前的电脑存在oracle jdk、graavlm-ce-jdk,问题解决是因为无意中换掉了官方的jdk也就是oraclejdk改成了graavlm-ce-jdk同时设置了maven运行参数

新电脑在创建maven失败后换了graavlm-ce-jdk,没有设置maven运行参数的情况下项目创建成功maven项目但是有warning,然后加上参数再次创建项目warning依旧存在,此时意识到可能是oraclejdk的问题然后下载了openjdk,在不加maven参数情况下用不同版本(8、11、13、14、15)进行测试,全部成功创建项目且没有warning。下面附上openjdk百度云链接,提取码:zis8 。

为什么openjdk能够成功而oraclejdk却失败原因暂时未知,可能每人情况不大一样,如果前面几张方法都没有解决问题,不妨尝试换个jdk,jdk版本很多,优先考虑openjdk的8和11,都是长期维护版本且不至于因为版本过新而出现其他问题。

五、maven

maven本身下载时出现差错,建议重下压缩包,并检验md5码;
注意设置Maven运行参数绕开网站证书检测

六、项目初始设置


这里算是项目创建模板选择,很多人包括我都是按照教程选择了一个模板然后再创建项目。

事实上,这里大可不必选择模板,因为据我分析个人的报错提示发现按照模板创建项目是需要相关模板文件的,但此时容易出现can not create archetype错误,再进一步分析报错是无法获取到相应的模板文件从而导致无法依照模板创建项目,所以在前面方法无效时可以尝试跳过模板选择直接点下一步,但个人推测问题还是出现在jdk上或者网站证书上。

总结

个人总结:

解决项目创建失败问题优先考虑设置maven运行参数、切换jdk版。
如果在同样的网络下项目创建没问题,依赖下载失败,优先考虑更换仓库地址、设置maven运行参数。

maven创建项目失败以及无法下载依赖的解决办法目前能想到的大致是这些,如果以后有新的解决办法会再次更新,欢迎交流自己的解决方案



2020/11/03 更新
使用IJ创建springboot项目失败,最终解决,问题与解决办法如下:

1、初始化项目失败,下载artifact文件失败,原因在于项目pom文件中新引入仓库,且其优先级高于setting.xml,其配置的仓库会在设置中出现

这里显示的是当前正在使用的仓库,而如果pom文件出现下面的内容则此处会发生相应的改变

个人此处使用的版本是2.3.6,之前使用的是2.3.5,因为是新版本故需要重新下载相关项目构建的依赖文件,但是因为他在pom文件中配置的仓库不是常用的各类仓库地址,因此会提示从https://repo.spring.io/milestone下载xxx文件失败,此时将此处新增的仓库注释掉,然后再重新打开项目使用之前在setting.xml文件中配置的地址进行构建即可

2、下载依赖不成功,显示本地仓库存在相关依赖,因为之前相关依赖未完全下载成功而导致此时下载依赖失败,此时可以修改仓库地址成如下:

<mirror><id>central</id><name>Maven Repository Switchboard</name><url>https://repo1.maven.org/maven2/</url><mirrorOf>central</mirrorOf><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
</mirror>

注意:maven仓库地址的协议是https,不是常见的http,否则会报501错误

3、下载完项目需要的一些依赖后,还需下载plugins,此时之前在pom文件中注释掉仓库地址,需要重新恢复,否则可能也会报错

4、可能会遇到Plugin 'org.springframework.boot:spring-boot-maven-plugin:' not found问题,在pom文件下为该依赖添加版本号即可,版本号复制pom文件前面给的版本号即可。记得关闭项目重新打开

然后坑爹的地方来了,个人再次新建两springboot项目,版本都在2.3.5以上,然而构建项目很顺利,基本没啥问题,事实再一次证明maven构建项目容易出问题在第一次构建新版本项目上,问题的出现具有很强的偶然性与不可预测性,但是在maven构建项目上不断踩坑之后我发现一般会出的问题来来回回就是那么几个,但就是这几个问题坑惨了无数的初学者。

有预感,还会再次更新。。。

总结maven项目创建失败解决办法相关推荐

  1. Microsoft visual studio 2015已停止工作及项目创建失败解决方法

    Microsoft visual studio 2015已停止工作 问题明细信息 问题签名:   问题事件名称: CLR20r3   问题签名 01: devenv.exe   问题签名 02: 14 ...

  2. freenas作无盘服务器,Freenas11.3 jail创建失败解决办法

    Freenas11.3 jail创建失败解决办法 2020-04-16 10:38:02 6点赞 26收藏 7评论 创作立场声明:本人是技术小白,最近看到很多人反映遇到jail创建失败的情况,想到前段 ...

  3. 同一个Maven项目移机出错解决办法

       原因:Maven把项目资源全部下载到项目所在计算机上,而不是在项目里,转移项目后所有资源丢失,需要重新下载,但会出现下载不全或出错现象,需要如下手动修改 pom.xml文件报错(包丢失) 首先: ...

  4. 解决Maven项目创建太慢的问题

    在实际开发中,我们通常会用到maven的archetype插件(原型框架)来生成项目框架.但是无奈,创建时,总会卡在 [INFO] Generating project in Batch mode 复 ...

  5. IDEA创建maven项目报错解决:Failed to create a Maven project: 'C:/Users/../IdeaProjects/../pom.xml' already e

    此文首发于我的个人博客:IDEA创建maven项目报错解决 Failed to create a Maven project 'C:/Users/-/IdeaProjects/-/pom.xml' a ...

  6. Anaconda 创建虚拟环境失败解决办法

    Anaconda 创建虚拟环境失败解决办法 conda create -n universe python=3.6 在Anaconda中创建一个虚拟环境,出现了如下错误: CondaHTTPError ...

  7. Unity使用VS编辑器打开项目失败解决办法

    Unity使用VS编辑器打开项目失败解决办法 解决过程 解决过程 具体表现为:项目文件.sln无法打开,打开脚本文件后无法关联到Unity编辑器 报错信息可能不同,参考出错表现即可 首先去清除有逻辑错 ...

  8. 无线网络玩天刀创建服务器失败,天涯明月刀手游连接服务器失败解决办法 总是掉线...

    天涯明月刀手游连接服务器失败怎么办?为什么总是掉线?游戏中很多玩家发现自己玩的时候连接服务器失败,非常难受,下面由第一手游网小编为大家带来连接服务器失败解决办法吧! 天涯明月刀手游连接服务器失败解决办 ...

  9. android studio 新建工程慢,关于AndroidStudio新建与编译项目速度慢解决办法

    android第一次新建项目是,相关依赖包需要下载很久,至少半小时,因为网速问题,还会多次下载失败. 解决办法如下: 1.通过镜像将gradle-5.4.1-all.zip下载到本地:解压到文件夹:D ...

最新文章

  1. 20220215 人工势场的缺陷局部最小值
  2. 1209. 删除字符串中的所有相邻重复项 II
  3. mysql启动多端口
  4. Fiori launchpad里Enter Group name这个tile是怎么配置出来的
  5. jpg图片使用pil的resize后_如何使用PIL调整图像大小并保持其纵横比?
  6. POJ3764 The xor-longest Path(Trie树)
  7. 欧姆龙变频器MX2参数_第442期丨【源程序】基于三菱西门子欧姆龙松下PLC实现喷水池控制系统;欧姆龙PLC编程软件更新步骤...
  8. 数据结构 —— 树状数组
  9. 第11章 享元模式(Flyweight Pattern)
  10. 手机怎样才能接收到五公里外的WiFi信号?
  11. 游戏开发之C++多继承及虚继承(C++基础)
  12. Sublime Text快捷键
  13. 快速开发微信小程序直播--微信直播--小程序直播开发
  14. 【2021】15天通过阿里云云计算架构师认证考试(ACE)- 经验分享
  15. Deep Feedforward Networks(3)
  16. 天线接收功率计算公式_无线信号功率计算公式
  17. 百度地图秘钥未授权问题
  18. html给页面添加艺术型边框,如何为2016word的页面设置艺术型页面边框
  19. 前端隐秘角落 - web安全的演变历程
  20. HPatches A benchmark and evaluation of handcrafted and learned local descriptors——2017.04

热门文章

  1. oracle中怎么获取系统时间,oracle中得到当前系统时间
  2. 解决安装Electron缓慢问题
  3. 光伏发电的新方向—光伏+储能风口已至
  4. 数字音频接口时序----IIS、TDM、PCM、PDM
  5. 如何进行分销,分销的步骤是怎样的?
  6. d2admin框架学习
  7. [Latex] \bibitem{} | .bbl 格式参考文献转换与获得
  8. Linux中OpenJDK下载部署
  9. UVa 297 - Quadtrees 四叉树, 及其在编码图像的应用
  10. sed 删除匹配行的前后行