Maven如何知道使用了哪个原型?

4

我想知道Maven如何确定指定pom.xml使用哪个原型。

我没有发现maven-archetype-quickstart和maven-archetype-webapp的pom.xml之间有任何区别。


你找到了一种了解Maven项目使用的原型的方法吗? - Eswar
知道Maven项目的原型有什么好处? - Eswar
1个回答

7

以下是两个不同的问题:

我想知道 maven 是如何知道针对指定的 pom.xml 使用哪个原型。

通常使用原型插件是交互式的。只需调用 mvn archetype:create,向导会引导您完成不同的步骤。在 pom 中没有什么需要配置的。实际上,在现有项目中放置原型信息是愚蠢的,因为原型是用于创建新项目的。

我发现 maven-archetype-quickstart 和 maven-archetype-webapp 的 pom.xml 没有区别。

主要区别在于 webapp 包含一个 src/main/webapp 文件夹,其中包含静态 web 资源和 WEB-INF 文件夹。此外,打包设置为 war。因此,maven-archetype-quickstart 是用于创建简单 jar 项目的默认选项,而 maven-archetype-webapp 是用于创建简单 war 项目的默认选项。


我们在哪里可以找到每个Maven原型的详细定义/描述?比如它的预期用途。 - smwikipedia
@smwikipedia 你做不到。没有这样的中央服务,这正是原型的问题所在。 - Sean Patrick Floyd
谢谢您的快速回复。那么,这种缺乏描述的情况是原型设计的弱点吗? - smwikipedia
将原型视为模板。您可以从一个模板开始,但之后它对您如何更改它没有任何影响。就我个人而言,我使用原型的唯一时间是为了教学,以帮助新手入门。在现实世界中,您只需复制粘贴一个POM并根据需要进行编辑即可。 - codesalsa
1
@smwikipedia 为了回答您关于Maven提供的原型的问题,现在有关于Maven提供的十一个原型(即名称形式为_maven-archetype-{xxx}_的原型)的优秀文档在Maven网站上 - skomisa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接