这个问题困扰了我很久,一直无法解决;我在虚拟机里面按照同样的步骤配置了三次maven项目,每次都能成功;可一旦到外面maven项目总是创建失败,输入mvn help:system总是出现No plugin found for prefix 'help' in the current project and in the plugin groups

这里记录了我所有的思考过程,想直接查看解决方案的可点击这里:解决方案

先说一下物理机环境:

OS:Win10家庭中文版

JDK:1.8(这里一定一定要注意JDK的版本,不要太高否则就算配置完成了项目可能也跑不起来

Maven:3.8.1

起初我以为是操作系统的问题,因为在搜索的时候看到的确有很多人重装系统最后配置成功了,而且我虚拟机中的操作系统是Win10专业版;但电脑中重要的东西实在太多了,这个方案最先被我PASS;

也有很多人说是中央仓库镜像的问题,配置成阿里的就好了,这个方式我也试过,但还是一样的问题;仍然是No plugin found for prefix 'help' in the current project and in the plugin groups,期间我还试过华为的镜像等,不仅如此,我还尝试着翻了一下,结果全部失败;

再后来我看到了另外一种解决方案,这里把链接放一下

https://blog.csdn.net/qq_37537009/article/details/107714349

按照这种方式是试了几次确实成功了,但进入IEDA后无法下载JAR包,一直都在报错;

我思考了一下觉得问题还是出在No plugin found for prefix 'help' in the current project and in the plugin groups上,于是我在Google上查了一下,关于这个错误几乎没有什么有价值的信息,我相信能够看到这里的诸位应该深有体会;

https://stackoverflow.com/questions/26364608/why-is-there-the-error-no-plugin-found-for-prefix-help-in-the-current-project

这个贴子里的这段话给了我启发

大致意思就是help代表了一个特定的前缀的插件,在构建项目时首先会从本地的仓库找起,如果找不到,会跑到配置的镜像中去查找,如果找不到便会报出构建失败;

下面是答主给出的两个可能原因:

1、本地仓库的文件损坏了;

2、无法连接远程仓库,基本上大多是网络连接问题;

说实话我只是看到教程中有这样一个步骤,我试了,报错了,然后就没然后了 ,于是我搜索了一下这个命令,我自己的理解就是;

运行这个命令时,会对Maven构建项目所必须一些JAR进行下载,这些JAR在我们的pom.xml文件中也能够见到

这个时候我觉得其实问题的原因无外乎有这样几种:

1、Maven在我配置的中央仓库镜像中找不到这些JAR;

2、网络问题

说实话其实这两个原因我觉得都像是在开玩笑一样,因为这些JAR怎么会在阿里或者华为的仓库中找不到呢?应该是很基本的JAR啊,

再说网络问题,中央仓库镜像说实话换了太多了,翻也翻了,怎么可能有问题呢?最关键的是我在虚拟机中配置的Maven仅仅就更改了本地仓库的路径,也没去配置仓库镜像,也一样成功了啊;

https://stackoverflow.com/questions/26364608/why-is-there-the-error-no-plugin-found-for-prefix-help-in-the-current-project

还是这个帖子,最后的一个回帖给我带来了第三种可能:

我尝试搜索了一下这个maven-compiler-plugin 网上说这是一个编译插件,简单说就是指定所编译的JDK版本,看起来文不对题,但是我开始考虑是不是因为JDK的问题;

于是我跑到setting.xml中配置了一下JRE

<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>

设置完毕之后一定不要忘记两件事:

1、保存修改后的配置文件,重新打开CMD

2、在本地仓库的路径下进入CMD运行下面这段代码

for /r %i in (*.lastUpdated) do del %i

上面两件事完成后,我重新输入了mvn help:system,竟然开始下载了。

但还没高兴太久,报出了异常;这里我忘记了截图,说是Failed to execute goal...

我查看了一下好像是和JRE版本有关的异常,第一反应告诉我是由于刚才的设置,但是开始下载是件好事,可这里就矛盾了;如果因为我的设置才开始下载的话,报错又是怎么回事呢?下载和配置JRE又有什么关系呢?

我想不太明白,于是跑到本地仓库,直接清空了仓库,全部删除。希望能够复现Failed to execute goal...,但有意思的现象出来了,

当我输入mvn help:system,这次并没有开始下载,而重新报出了No plugin found for prefix 'help' in the current project and in the plugin groups

这个时候我又一次陷入沉思No plugin found for prefix 'help' in the current project and in the plugin groups,找不到插件,找不到插件,

行,如果非要说国内仓库找不到,那我去你们官方的仓库里去找好了吧。

解决方案

为了防止国外镜像速度过慢或者连接不稳定我首先翻了一下,这里我不确定我的成功与这个有没有关系

一、maven配置文件的配置

maven的配置文件我进行了三项设置,这里设置的填入位置网上都有很详细的教程,就不多赘述了:

1、配置本地仓库路径

<localRepository>D:\Software\Java\maven_repertory</localRepository>

2、配置中央仓库镜像

<mirror>
<id>repo1 Maven</id>
<name>all repository mirror</name>
<mirrorOf>*</mirrorOf>
<url>https://repo1.maven.org/maven2</url>
</mirror>

3、配置JRE

<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>

二、打开cmd

由于我们使用了国外镜像,因此存在ssh证书校验的问题,因此需要在原有命令的基础上加一些东西

mvn help:system -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.valid

敲击回车,可以看到开始下载

构建成功

三、IDEA设置

mvn help:system成功执行实际上只是最基础的一步,我们的最终目的还是要保证项目中引用的JAR都能够被成功下载

IDEA版本

将下面这段代码填入,其实就是我们cmd中后面加上的那一段代码

-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.valid

点击IDEA右方的Maven,按照顺序点击这四个按钮

这里一定要注意,多使用CMD,打开本地仓库,清理未下载完成的JAR包,有时候可能会出现个别的JAR无法下载的情况,不用着急,重启以下IDEA,清理本地仓库未下载完成的JAR,然后重复上面的步骤即可

使用CMD清理未完成的JAR包;

一定要在本地仓库所在的目录下,一定要在本地仓库所在的目录下,一定要在本地仓库所在的目录下

for /r %i in (*.lastUpdated) do del %i

到这里我终于解决了这个困扰我的问题,每个人可能在配置Maven时遇到的问题都不太一样,其中我也有比较心急的时候,但一味的着急并不能解决问题,希望大家具体问题具体分析,比如我遇到的问题,我猜想大概率是配置中央仓库以及网络两方面的问题,解决了这两个问题,一切自然迎刃而解。还有最重要的一点,猜测永远都是猜测,不能完全相信,每一条报错信息都包含着巨大的价值。我最忽视No plugin found for prefix 'help' 到最后点醒了我。

Maven项目无法下载JAR包,输入mvn help:system出现No plugin found for prefix 'help' in the current project and in the plugin groups的解决方案的更多相关文章

  1. Maven命令行创建web项目,并部署到jobss当中(解决No plugin found for prefix 'jboss-as' in the current project and in the plugin groups [org.apache.maven.plugins,问题)

    首件创建项目:此处可参照:http://maven.apache.org/guides/mini/guide-webapp.html mvn archetype:generate -DgroupId= ...

  2. 构建Maven项目自动下载jar包

    使用Maven 自动下载jar包 右键单击项目,将项目 转换成Maven 项目 然后进去Maven官网 http://mvnrepository.com/ 这里有大量的jar包供我们使用,比如我现在要 ...

  3. 【转】构建Maven项目自动下载jar包

    原文地址:https://blog.csdn.net/gfd54gd5f46/article/details/54973954 使用Maven 自动下载jar包 右键单击项目,将项目 转换成Maven ...

  4. Maven出现错误No plugin found for prefix 'jetty' in the current project and in the plugin groups的问题解决

    只需在maven的setting.xml文件上加入如下节点: <pluginGroups> <pluginGroup>org.mortbay.jetty</pluginG ...

  5. No plugin found for prefix ‘jetty’ in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories

    maven配置文件(最大的那个)的<pluginGroups></pluginGroups>增加一行如下<pluginGroups><pluginGroup& ...

  6. eclipse maven 项目导出为 jar 包

    一个 maven 项目有很多依赖,所以最后打出的 jar 一般会很多,且比较大,打成 jar 包的步骤 (注意pom.xml文件中打包类型不能是war包): 1. 把 pom.xml 中依赖的库打成 ...

  7. 如何解决Maven和SBT下载Jar包太慢

    国内:如何解决Maven和SBT下载Jar包太慢 Maven 远程仓库 <mirror> <id>ui</id> <mirrorOf>central&l ...

  8. eclipse导入maven项目后依赖jar包更新问题->update project按钮

    eclipse导入maven项目后依赖jar包更新问题 1.eclipse有专门的导入maven项目按钮,file-import-maven project,eclipse会自动查找指定路径下的pom ...

  9. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)

    Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea   ...

随机推荐

  1. Envoy:TLS双向认证

    环境准备 主机 角色 数量 front-envoy front envoy 1 service envoy 作为内部后端的envoy 2 end 后端应用程序 2 访问 / front-envoy = ...

  2. [Java] 数据分析--分类

    ID3算法 思路:分类算法的输入为训练集,输出为对数据进行分类的函数.ID3算法为分类函数生成分类树 需求:对水果训练集的一个维度(是否甜)进行预测 实现:决策树,熵函数,ID3,weka库 J48类 ...

  3. zip密码破解小脚本

    zip密码破解小脚本 博主: 逍遥子 发布时间:2018 年 05 月 31 日 2745次浏览 1 条评论 1074字数 分类: kali 专栏 首页 正文 分享到:    文件源码 import ...

  4. bug修复

    bug严重级别 bug个数 bug修复率 上个版本的bug修复率 和arm对比 arm已修复

  5. 要想在for语句中直接定义一个变量

    要想在for语句中直接  定义一个变量  (如下的代码) 1 for(uint16_t i=0;i<10;i++); 2 if( GPIO_ReadInputDataBit(GPIOA, GPI ...

  6. C语言进阶日志二

    1.一个功能模块最好使用一个文件夹包含 2.基本就需要几个文件,比如定时器取反  LED: bsp_led.c 和 bsp_led.h : 包含你需要的led外设GPIO的初始化代码 led_it.c ...

  7. 8.12-14 df 、mkswap、swapon、swapoff、sync

    8.12 df:报告文件系统磁盘空间的使用情况   -a    显示所有文件系统 -h    以容易理解的格式显示磁盘的使用情况端 -i    显示文件系统的inode信息迷 -t    显示指定类型 ...

  8. Python中PyQuery库的使用

    pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的. 它的官方文档地址是:http://packages ...

  9. Locust性能测试工具核心技术@task和@events

    Tasks和Events是Locust性能测试工具的核心技术,有了它们,Locust才能称得上是一个性能工具. Tasks 从上篇文章知道,locustfile里面必须要有一个类,继承User类,当性 ...

  10. Nginx的超时timeout配置详解

    Nginx的超时timeout配置详解 本文介绍 Nginx 的 超时(timeout)配置. Nginx 处理的每个请求均有相应的超时设置.如果做好这些超时时间的限定,判定超时后资源被释放,用来处理 ...