原因:
- IDEA根据maven archetype的本质,其实是执行mvn
archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件。 - 该命令的参数-DarchetypeCatalog,可选值为:remote,internal
,local等,用来指定archetype-catalog.xml文件从哪里获取。 - 默认为remote,即从
http://repo1.maven.org/maven2/archetype-catalog.xml路径下载archetype-catalog.xml文件。 - https://repo1.maven.org/maven2/,打开网址后,按ctrl+f搜索文件名archetype-catalog.xml,找到该文件。
文件约为3-4M,下载速度很慢,导致创建过程卡住。
解决方法一:
在 IDEA 的 Settings 窗口中,搜索maven,找到maven下的Runner,在VM options输入框中输入:-DarchetypeCatalog=internal 保存即可。
解决方法二:
- 由于默认情况下,根据archetype创建maven项目会从网络下载catalog文件,导致创建maven项目缓慢
- 解决办法可以设置使用本地catalog文件,在IDEA中设置archetype的使用方式为local;
链接地址:https://repo1.maven.org/maven2/archetype-catalog.xml
打开网址后,右击另存为下载保存到本地。
下载后放到哪里呢,
这里与本地仓库的位置有关,假如本地仓库是maven默认的,并没有修改 那么就需要放到 本地仓库的默认位置:Default:${user.home}/.m2/repository。
假如修改了本地仓库的地址,就去maven的安装目录 conf配置目录下找到setting.xml文件,查看配置。
这里是设置了本地仓库地址为:G:\java_maven\maven_repository
那么就需要将下载的文件放到图中这个目录路径中:
- G:\java_maven\maven_repository\org\apache\maven\archetype\archetype-catalog\3.0.1
然后将 -DarchetypeCatalog= 后面的参数值改为local,应用保存就可以了。