转自:http://9leg.com/maven/2015/02/01/why-is-mvn-archetype-generate-so-low.html

最近从IntelliJ Idea 14的Community版本切换到Ultimate。

问题出现

最近从IntelliJ Idea 14的Community版本切换到Ultimate,key是从网络上下载的。安装之后,在创建maven project时(使用了archetype),速度慢的令人不敢相信,从Idea的控制台可以看到信息停留在:

[INFO] <<< maven-archetype-plugin:2.2:generate (default-cli) < generate-sources
@ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:2.2:generate (default-cli) @ standalone-pom --
-
[INFO] Generating project in Batch mode

重试了很多次,都在Generating project in Batch mode等待,但Idea的状态栏显示还在不停的运行,并没有卡死,大约30分钟之后,才完成项目的创建。

问题分析

为什么会等怎么久呢?我先用mvn原生的命令试了一次,

mvn archetype:generate -DgroupId=com.9leg.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

还是在Generating project in Batch mode等了很久,但排除了Idea的问题。接着加上 -X 命令,用于显示debugInfo.

mvn -X archetype:generate -DgroupId=com.9leg.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

输出信息如下:

[INFO] Generating project in Batch mode
[DEBUG] Searching for remote catalog: http://repo1.maven.org/maven2/archetype-catalog.xml

看来是请求网络上的catalog.xml文件,才导致速度很慢。直接复制了url用浏览器打开,速度也是超级慢,等了很久才打开。 看来问题就是出现在这里。

看来是请求网络上的catalog.xml文件,才导致速度很慢。直接复制了url用浏览器打开,速度也是超级慢,等了很久才打开。 看来问题就是出现在这里。

问题解决

  1. 直接下载archetype-catalog.xml文件,放到本地的apache-maven目录中。
  2. 在使用mvn archetype:generate命令时,加上-DarchetypeCatalog=local,以替换网络上的catalog.xml。

好了,OK了!!!又可以愉快的建立maven工程了!!!泪奔了好久!!!

直接到

http://repo1.maven.org/maven2/archetype-catalog.xml上下载该文件放到自己本地。

题外话

我切换到eclipse,生成maven项目并且选用了骨架archetype,没有任何问题。在eclipse中可以设置maven的archetype catalog,不管是本地的,还是远程的catalog,都可以设置。 切换到Idea中,找了半天,搜索了半天,似乎没有这个设置。只是可以在创建项目时,单独的设置自定义的archetype,而不能设置整个archetype列表。有谁知道请告知,谢谢。

参考:ARCHETYPE-202

【转】idea 用maven骨架生成项目速度慢的问题的更多相关文章

  1. 用maven骨架生成项目速度慢的问题

    最近从IntelliJ Idea 14的Community版本切换到Ultimate. 问题出现 最近从IntelliJ Idea 14的Community版本切换到Ultimate,key是从网络上 ...

  2. Maven骨架生成项目速度慢问题解决办法

    在创建maven project时(使用了archetype),速度慢的令人不敢相信,从Idea的控制台可以看到信息停留在: [INFO] <<< maven-archetype-p ...

  3. idea 用maven骨架生成项目速度慢的问题

    使用mvn archetype:generate命令时,加上-DarchetypeCatalog=local archetypeCatalog=local

  4. 定制Maven原型生成项目

    1自定义原型 1.1创建原型项目 要定制自己的原型,首先就要创建原型项目来进行定制: mvnarchetype:create -DgroupId=com.cdai.arche -DartifactId ...

  5. idea maven mvn archetype:generate 速度缓慢问题(转)

    From:https://my.oschina.net/u/225373/blog/468035   maven 骨架生成项目速度慢的令人发指,都在Generating project in Batc ...

  6. idea创建maven的web项目

    前言 今天搭xfire的时候,我想对xfire进行一下测试,就想弄个web工程试试,发现网上写的很多没有用的,就自己写了一下.十分精简.也介绍了如何解决maven骨架建立项目非常慢的问题. 介绍 1. ...

  7. Maven之自定义archetype生成项目骨架(一)

      Maven之自定义archetype生成项目骨架(一) 标签: mavennexus插件 2015-07-15 16:40 2443人阅读 评论(0) 收藏 举报  分类: Maven技术(9)  ...

  8. maven3实战之maven使用入门(使用archetype生成项目骨架)

    maven3实战之maven使用入门(使用archetype生成项目骨架) ---------- maven提供了archetype以帮助我们快速勾勒出项目骨架.以Hello World为例,我们使用 ...

  9. Maven之自定义archetype生成项目骨架

    Maven之自定义archetype生成项目骨架(一) http://blog.csdn.net/sxdtzhaoxinguo/article/details/46895013

随机推荐

  1. dell r710 服务器配置RAID5(3块硬盘做RAID5,另外再弄一块做数据冗余盘)

    本文完全转载于:http://www.jb51.net/article/53814.htm,只为做笔记使用 ①4块硬盘做成RAID5 ②3块硬盘做RAID5,一块硬盘做热备盘 这两种配置之间的区别.大 ...

  2. [转]Java总结篇系列:Java泛型

    一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(Stri ...

  3. Hibernate-Criteria用法

    criteria 英[kraɪˈtɪərɪə] 美[kraɪˈtɪrɪə] Hibernate 设计了 CriteriaSpecification Hibernate 设计了 CriteriaSpec ...

  4. Lucene -- 实时索引

    lucene的实时搜索可以分成:实时和近实时的搜索. 实时只能依靠内存了. 近实时可以用lucene中提供org.apache.lucene.index.DirectoryReader.open(In ...

  5. Java编程思想学习(十五) 注解

    注解Annotation又叫元数据,是JDK5中引入的一种以通用格式为程序提供配置信息的方式.使用注解Annotation可以使元数据写在程序源码中,使得代码看起来简洁,同时编译器也提供了对注解Ann ...

  6. [IOS Delegate和协议]

    转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/25655443 作者:小马 代理和协议的语法这里不赘述,自己查资料. 这个demo的 ...

  7. TCP/IP详解 学习三

    网际协议 ip Ip 是不可靠和无连接的 ip首部 4个字节的 32 bit值以下面的次序传输:首先是 0-7 bit,其次 8-15 bit,然后 1 6-23 bit,最后是 24~31 bit. ...

  8. Looper

    /** * Class used to run a message loop for a thread. Threads by default do * not have a message loop ...

  9. Bookmarklet

    学习 http://www.ruanyifeng.com/blog/2011/06/a_guide_for_writing_bookmarklet.html

  10. php中mysql参数化查询

    $query = sprintf("SELECT * FROM Users where UserName='%s' and Password='%s'",mysql_real_es ...