通过mvn archetype:generate这种交互方式来创建Maven项目模板的时候,经常会长时间卡在Generating project in Interactive mode这一行提示(图1)。
看了网上的帖子(文章最底下有说明),发现是获取archetype-catalog.xml导致的(浏览器访问http://repo1.maven.org/maven2/archetype-catalog.xml,需要等待很长时间才能获取到)。
其实下载下来会发现Maven提供的archetype太多了,足足有一千四百二十七种(图2),有时候只是想创建一个quickStart项目模板,实在不需要花时间下载这个archetype-catalog.xml。
解决方法有两种:
1、指定-DarchetypeCatalog=internal参数(图3),使用archetype插件内置的catalog。
2、指定-DarchetypeCatalog=local参数(图4),使用本地路径下的~/.m2/archetype-catalog.xml。如果本地没有archetype-catalog.xml,可以通过mvn archetype:crawl获取archetype-catalog.xml到~/.m2/repositoriy/archetype-catalog.xml。之后注意将archetype-catalog.xml放到~/.m2/目录下(真是奇怪,不如直接下载到被使用的目录)。如果想要获取更加完整的catalog,可以访问http://repo1.maven.org/maven2/archetype-catalog.xml。
(图1)
(图2)
(图3)
(图4)
参考帖子:http://***/Article/45560