问题描述

通过idea新建maven项目,参数设置好后,idea自动构建maven项目时,速度很慢。

参数设置如图:

执行时间如下图:

Total time为8:49,花了将近十分钟时间。

连续尝试了几次,都是如此,感觉编辑器卡住了一样。

问题原因

[DEBUG]  Searching for remote catalog: http://repo1.maven.org/maven2/archetype-catalog.xml这一条语句执行了很久。

编辑器在执行mvn archetype:generate命令时,需要指定一个archetype-catalog.xml文件,该命令的参数为-DarchetypeCatalog,用来指定archetype-catalog.xml文件从哪里获取,可选值为:remote,internal  ,local,默认为remote,即从http://repo1.maven.org/maven2/archetype-catalog.xml路径下载archetype-catalog.xml文件,查看该文件可知,如下图:

该文件大小将近6M,在网速不理想情况下,由此方式下载势必会造成卡顿的情况。

速度测试

于是使用上述archetypeCatalog参数的三个数值remote,internal,local分别进行测试,得出如下结果:

  • 参数值为remote时,Total time为8:49,如图:
  • 参数值为internal时,Total time为1:19,如图:
  • 参数值为local时,Total time为4:01,如图:
当然,测试取样数值较少,且为网速较低时测试,得到的结果也只是一个大概情况,即internal优于local优于remote,可能网速较快时,误差可以忽略。
 
因此,修改配置时的archetypeCatalog参数值即可。
 
 
archetypeCatalog设置
 
1、remote为默认值,不需设置。
 
2、修改archetypeCatalog为internal,有以下两种方法:
  • 在新建maven项目时添加archetypeCatalog参数,并将值设置为internal
  • 直接修改maven配置参数,在使用mvn archetype:generate命令时,加上-DarchetypeCatalog=internal
 
3、修改archetypeCatalog为local前,需要先将archetype-catalog.xml下载至本地,并将此文件放至maven仓库目录下,设置archetypeCatalog为local时,同样有以下两种方法:
  • 在新建maven项目时添加archetypeCatalog参数,并将值设置为local
  • 直接修改maven配置参数,在使用mvn archetype:generate命令时,加上-DarchetypeCatalog=local
 
几种解决方法都已罗列出来,至于选哪种,就看你意愿啦,编程过程中无卡顿,美滋滋。

解决新建maven项目速度慢的问题的更多相关文章

  1. 解决新建Maven项目webapp-- index.jsp报错

    现在,随着项目开发的不断增长,项目变得庞大,jar包管理起来也很费时.使用maven工程可以很轻松的帮助我们管理jar包,省时. 今天,我在公司电脑新建的maven工程,新建完后 index.jsp报 ...

  2. idea新建maven项目时,mvn archetype:generate 速度缓慢

    原文 idea新建maven项目时,mvn archetype:generate 速度缓慢 1 现象: 用IDEA新建maven项目,填写完各种参数,创建时,控制台卡在“[INFO] Generati ...

  3. (转)新建maven项目时报错Error:Maven Resources Compiler: Maven project configuration required for module 'XX'解决方法

    转载地址:https://blog.csdn.net/qq784515681/article/details/85070195 在新建maven项目时,Problems中报错: Error:Maven ...

  4. eclipse上新建Maven项目报错及解决

    Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of ...

  5. 解决 IDEA 2021.2.3 新建maven项目只有两个archetype项目模板的问题

    最近把我的 IDEA 版本更新到 2021.2.3 了,发生了一个比较有意思的问题,做个小小的记录 思路分析 在新的 IDEA 中配置完Maven之后,想要创建Maven项目的时候没有自动加载arch ...

  6. 解决IntelliJ IDEA 创建Maven项目速度慢问题

    IntelliJ IDEA 创建maven项目速度很慢,甚至卡住不动了. 原因 IDEA根据maven archetype的本质,其实是执行mvn archetype:generate命令,该命令执行 ...

  7. IDEA配置好maven后新建maven项目一直build失败的解决方法

    maven配置了aliyun中央仓库后,IDEA新建maven项目一直出现以下问题: 相信有遇到这个问题的小伙伴很蛋疼,明明maven配置没错,新建项目却一直build失败,为了这个问题我重装过几次I ...

  8. idea创建maven项目速度慢?别急,这有三种方案

    困扰 Intellij idea是一款非常强大的编辑器,可以很方便地帮我们创建maven项目,有用过的同学应该都深有体会,但我们经常会遇到一个困扰,那就是用idea创建maven项目时,速度很慢,往往 ...

  9. eclipse新建maven项目(2)

    本篇博文是继续之前的博文eclipse新建maven项目(1),那篇博文不在随笔在文章中.首先按照之前那篇博文进行创建maven项目操作,一系列操作下来之后发现刷新项目后会报错: 别急哈,可以解决. ...

随机推荐

  1. layer弹窗插件实战用法小结1—— layer.alert()

    http://layer.layui.com 第一节:layer.alert()弹窗的用法 1.解压layer-v2.2.zip压缩包 2.拷贝layer文件夹到实战项目目录 3.注意:layer.j ...

  2. Hdu-2112 HDU Today (单源多点最短路——Dijsktra算法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2112 题目大意:给你N个公交车站,起点,终点,各站之间的距离,求起点到终点之间的最短距离.(起点终点相 ...

  3. 数据契约(DataContract)的作用

    服务契约定义了远程访问对象和可供调用的方法,数据契约则是服务端和客户端之间要传送的自定义数据类型. 一旦声明一个类型为DataContract,那么该类型就可以被序列化在服务端和客户端之间传送,如下所 ...

  4. App Store Review Guideline(带翻译)

    1. Terms and conditions(法律与条款) 1.1  As a developer of applications for the App Store you are bound b ...

  5. JavaScript 轻松创建级联函数

    级联函数是什么? 在一行代码上,调用一个接一个的方法.这种技术在 JQuery 或者其他 JavaScript 库中是非常常见的. 代码如下: $('#myDiv').fadeOut().html(' ...

  6. Atom 编辑器系列视频课程

    此课程为 Atom 编辑器系列课程,主要介绍了 Atom 的高效开发技巧以及必备插件. 课程列表 Atom编辑器系列课程 #1 - Atom简介 Atom编辑器系列课程 #2 - 设置简介 Atom编 ...

  7. JUC学习笔记--JUC中并发工具类

    JUC中并发工具类 CountDownLatch CountDownLatch是我目前使用比较多的类,CountDownLatch初始化时会给定一个计数,然后每次调用countDown() 计数减1, ...

  8. ReentrantLock获取、释放锁的过程

    看了篇文章,觉得分析得很透彻,其后总结的很到位,地址:http://www.iteye.com/topic/1083832 把获取与释放操作串在一起在简单看一下: 获取锁的时候将当前线程放入同步队列, ...

  9. ProjectManager Beta 2 项目管理器发布

    上次载Alpha阶段有一个可用版本Alpha 8也在这个博客发布了,传送:http://www.cnblogs.com/deali/p/ProjectManager.html ProjectManag ...

  10. Xamarin 小试牛刀 通知栏消息通知和按钮(基于Java代码人肉转换)

    本示例基于网友现有安卓项目人肉翻译,在Xamarin中替换和修改了很多方法的命名,比如某些属性需要去掉getName的get前缀, 有些方法名称需要使用Pascal命名法替换Java的Camel 命名 ...