报错信息如下:
[WARNING] Could not transfer metadata org.apache.maven.plugins:maven-archetype-plugin/maven-metadata.xml from/to central (https://repo.maven.apache.org/maven2):
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11.365 s
[INFO] Finished at: 2020-03-17T11:59:28+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Plugin org.apache.maven.plugins:maven-archetype-plugin:
RELEASE or one of its dependencies could not be resolved:
Failed to read artifact descriptor for org.apache.maven.plugins:maven-archetype-plugin:jar:
RELEASE: Failed to resolve version for org.apache.maven.plugins:maven-archetype-plugin:jar:
RELEASE:
Could not find metadata org.apache.maven.plugins:maven-archetype-plugin/maven-metadata.xml in local (D:\maven\apache-maven-3.5.4-bin\apache-maven-3.5.4\repository) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
尝试网络上的很多解决方案,都无效。
例如:1. 证书导入,因为有错误显示说证明失效。
2. gradle的问题。
最后有效的方法是:
第一步,建立本地maven。
第二步,idea 配置本地maven。
第三步,再通过对本地maven的仓库配置修改
(1.本地maven;2.仓库来源修改成腾讯镜像)
依旧无法构建?!!,请跳转至文末
---------------------------------------------------------------------------------------------------------------------------------------------------------
第一步,配置本地maven
1.下载安装maven
我是在 腾讯软件源 进行下载maven 下载合适idea版本的maven,我下载的版本是maven-3.5.4。
选择合适的压缩包和解压路径。
我的解压路径是:D:\maven\apache-maven-3.5.4-bin\apache-maven-3.5.4
2.环境变量的配置(win的环境除特殊的配置外,一律不要添加分号;)
(1)新建系统变量名MAVEM_HOME, 变量值是D:\maven\apache-maven-3.5.4-bin\apache-maven-3.5.4
配置两个变量名 MAVEN_HOME 和 M2_HOME 变量名都是你存放maven的路径。
(2)在系统变量path中添加 , 变量值是%MAVEN_HOME%\bin;%M2_HOME%\bin;
(3)测试环境变量
进入命令提示符窗口,查看maven是否配置成功
在提示框中输入 "mvn -v",就会看到以下信息。
恭喜你,配置成功。
当然我的电脑不是这么的顺利。出现了报错:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
也就是说,java_home环境出现了问题,要么是路径问题,要么你还可以看看的Java_home变量状态是怎样的,是不能有分号;存在的。注意:win10的话,当他是文本格式的时候没有分号;则真的就是没有分号。详情请看 maven配置与安装。
第二步,idea 配置本地maven。
idea: file ——>setting——> maven.
选择配置本地maven前面才安装的路径。
然后勾选下面两个对话框的override,对应的设置文件和仓库也应该是本地文件的路经。
仓库(repository)在本地maven里面其实没有该文件夹,自己创建一个新文件夹就可以了。
第三步,再通过对本地maven的仓库配置修改
maven-setting添加腾讯镜像+本地仓库
找到本地maven,然后再conf文件下有setting.xml,对maven设置进行修改。
设置本地仓库。路经就是本地maven下的repository文件夹。
设置镜像。我使用的是腾讯的镜像,但是再设置镜像前,最好是去官网看一下是否能被使用。好的镜像站,每天都会更新同步状态。当然我这里使用的还是前面的链接,腾讯软件源里面有提供了maven的镜像。
---------------------------------------------------------------------------------------------------------
maven构建项目失败
报错信息:无法连接alimaven,依赖无法下载(参考:https://www.zhihu.com/question/350864269)
错误原因: ssl安全证书问题
解决方法:
Step1:关闭项目
Step2:修改maven下的setting.xml,添加镜像(https协议,直接把网址http改为https即可,同样可访问)
Step 3:添加安全协议
1. jar, test-jar, maven-plugin, ejb, ejb-client, jboss-har, jboss-sar, war, ear, bundle
2. -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
重新构建即可成功。