IDEA下MAVEN环境搭建失败原因与方案总结

按照教程在IDEA下搭建MAVEN环境失败,然后出现一下提示

[INFO] Scanning for projects...
[INFO] 
[INFO] ---------------------< org.example:Spring_MyBatis >---------------------
[INFO] Building Spring_MyBatis 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from nexus-aliyun: http://maven.aliyun.com/nexus/content/repositories/central/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.801 s
[INFO] Finished at: 2020-01-27T10:57:01+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Plugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.6: Could not transfer artifact org.apache.maven.plugins:maven-resources-plugin:pom:2.6 from/to nexus-aliyun (http://maven.aliyun.com/nexus/content/repositories/central): Transfer failed for http://maven.aliyun.com/nexus/content/repositories/central/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.pom: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty -> [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] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

根据网上的说法与自己的摸索,大致总结出一下几点原因与解决方案:

  1. 创建项目时,仓库地址与配置文件地址不一致,也就是说配置文件settings.xml与仓库最好在同一个目录下。注意在C盘.m2文件夹下可能也有仓库,这里也需要放置一个下相同的配置文件,尽管项目配置的仓库和IDEA里自己设置的仓库不一定在这里,但是很建议放一个配置文件

  2. 首先要明确MAVEN插件在可以自己安装,然后配置环境,这是最常见的。但同时,MAVEN插件在IDEA本地自带的plugin库也有。在不明确自己使用的到底是那个插件时,最好全部同步配置文件,也就是在相应的目录下放置相同的settings.xml.
    其中,IDEA的配置文件应放在在 你的IDEA安装路径\plugins\maven\lib\maven3\conf下,自己装的MAVEN的配置文件在 你的MAVEN安装路径\conf下

  3. settings.xml中没有配置!! 这个相当的坑,settings.xml文件有几KB大,很多人会误以为配置文件都是配置好的,其实打开一看,里面大段大段的注释,都是在教你如何配置这个文件,告诉你们每个标签有那些内容以及需要配置啥。然而网上的教程都是在教你配置本地仓库与中央仓库,也就是mirrors和localrepository标签其实还有server以及pluginGroups标签可以配置一下,一个是配置插件仓库所在的地址,一个是使用特殊服务所需要配置的身份验证的相关信息。里面还有其它的一些配置,具体可以看看settings.xml.
    也就是说所谓配置文件,如果不去配置,其实完全不起作用,因为里面的关键配置都没配好,中央仓库建议阿里云的仓库,当然国内的都可以

  4. 如果开了网络代理,记得在配置文件中配置下proxies标签

  5. 构建MAVEN时插件或者仓库下载失败,可以考虑清空以前下载过的仓库及插件,然后重启

  6. maven目录下的mvn中配置的jdk可能不对,或者没配。
    打开你的maven目录下bin文件夹mvn文件,然后找到一下位置
    (个人感觉影响不大,只要不是JDK配置错误就行)

# For MinGW, ensure paths are in Unix format before anything is touched
if $mingw ; then
  [ -n "$MAVEN_HOME" ] &&
    MAVEN_HOME=`(cd "$MAVEN_HOME"; pwd)`
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`(cd "$JAVA_HOME"; pwd)`
  # TODO classpath?
fi


if [ -z "$JAVA_HOME" ] ; then
  JAVACMD=`which java`
else
  JAVACMD="$JAVA_HOME/bin/java"
fi

然后在中间空着的fi后面添加一下代码(个人感觉不配也可以,配了的话,JDK一旦改动会比较麻烦)

JAVA_HOME = '你自己的jdk目录'
  1. 修改配置文件记得在.m2、idea下maven、自己配置的maven下同步,记得重启idea,重启电脑也行。事实上,.m2目录下的配置文件具有最高的优先级,但是一般
    该目录下并没有该配置文件,所以一般会优先使用自己配置的maven的配置文件,但是由于新建项目时会默认使用.m2的配置文件,所以在.m2目录下同步放置配置文件,还是比较省事的。

  2. 试图访问下载的插件不在中央仓库里,或者在第三方仓库里,但是没有配置到相应的pluginGroups里,所以检验下配置的各种信息是否正确以及仓库里是否存在该插件

暂时总结出这些原因,希望能为大家提供解决问题的思路,这些方案不一定有用,但这么做可能能减少出问题的概率


最后提供一个解决方法,那就是使用Gradle整合开发,有一说一,在我这使用Gradle比Maven更让人省心,大家可以试试,不必一条路走到黑.

发布了7 篇原创文章 · 获赞 1 · 访问量 132

猜你喜欢

转载自blog.csdn.net/weixin_43694216/article/details/104091611
今日推荐