网站首页 > 博客文章 正文
Maven为我们提供了archetype,archetype可以方便的生成项目模板,并根据该模板来生成项目。
Archetype是什么?
我们可以将Archetype理解成Maven项目的模板,通过Archetype,我们可以快速生成项目框架。也可以简单的理解为模板工具类,通过archetype我们可以快速的生成项目的基本架构。比如我们使用idea创建一个maven web项目时,常常会选择maven-archetype-webapp模板来初始化项目,使用maven-archetype-webapp生成的项目中包括webapp目录,里面包含web的配置文件等。
根据ArcheType模板创建项目
在使用IntelliJ IDEA创建Maven项目时,选择一个Maven项目模板,出现如下异常信息:
No archetype found in remote catalog. Defaulting to internal catalog
Archetype not found in any catalog. Falling back to central repository.
Add a repository with id 'archetype' in your settings.xml if archetype's repository is elsewhere.
大概意思是:在远程目录中没有找到archetype,默认使用internal目录。
问题分析和解决办法
这个问题一般是因为创建项目时需要从网络上下载一个 archetype-catalog.xml 文件,如果网络情况不理想很容易卡在这一步。这一问题可以通过调整 archetypeCatalog 参数来解决。这一参数可以为 internal,local,remote:
- internal:读取maven-archetype-plugin内置的 archetype-catalog.xml 文件;
- local:读取本地文件,位置为~/.m2/archetype-catalog.xml;
- remote:默认,指向Maven中央仓库的Catalog。其确切的地址为:https://repo1.maven.org/maven2/archetype-catalog.xml,注意一定要采用https,这个文件有12M多。
参考如下步骤进行设置:
(1)打开 IDEA,点击File->New Projects Settings->Preferences for New Projects… 菜单项,如图所示:
(2)在弹出窗口中,选择左侧的Maven/Runner配置页面,在Runner页面的VM Options添加:-DarchetypeCatalog=local,点击Apply,点击OK。
(3)下载archetype-catalog.xml文件
到Maven中央仓库下载该文件:https://repo1.maven.org/maven2/archetype-catalog.xml【注意一定要使用https协议】
将下载完成的archetype-catalog.xml 文件放在本地的.m2/repository(本地仓库)目录下,具体本地仓库地址可以在IDEA中查看。
如图所示,archetype-catalog.xml 放置在本地仓库(.m2/repository)中。
这样,我们在使用IDEA创建maven项目时,不会从网络下载catalog文件,通过前面设置archetype的使用方式为local,读取本地文件,位置为~/.m2/archetype-catalog.xml。
下图是我们正常创建Maven项目的截图。
猜你喜欢
- 2024-10-20 从零开发一个WEB应用(一)搭建后端开发环境
- 2024-10-20 SpringBoot教程:Maven方式创建SpringBoot项目
- 2024-10-20 学Maven,这篇万余字的教程,真的够用了
- 2024-10-20 javaEE技术分享之如何使用Spring Boot快速创建Web应用
- 2024-10-20 Maven项目改为spring boot项目的方法
- 2024-10-20 「干货」带你走进Spring Boot 项目实战:Maven 多模块项目搭建
- 2024-10-20 Eclipse + Ant / Maven + Java 8 开发环境搭建一文穿透
- 2024-10-20 idea新建springboot项目(idea新建一个springboot项目)
- 2024-10-20 Maven+Jetty/Tomcat进行web部署开发
- 2024-10-20 IDEA下从零开始搭建SpringBoot工程
你 发表评论:
欢迎- 367℃用AI Agent治理微服务的复杂性问题|QCon
- 359℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 346℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 342℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)