1、archetypeCatalog:
在最新的Maven archetype插件的2.0-alpha-2版本中,archetype的创建方式和之前大不一样,将使用 archetype:generate 来创建项目,而不是之前的 archetype:create。archetype:generate方式创建项目将更加人性化,而且对于各种archetype的归类和项目创建提示帮助都很大,如你还没有使用过,你只需输入mvn archetype:generate就可以体验到啦。
为了更好地体验archetype:generate的功能,我们需要讲述一下新的archetype:generate是如何查找各个archetype jar文件的。archetype:generate是通过archetypeCatalog设置来查找相关的archetype,这里archetype catalog相当于archetype库,一个catalog包含多个archetype。这个库是什么样的呢,其实就是一个描述文件,名称为archetype-catalog.xml,格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<archetype-catalog>
<archetypes>
<archetype>
<groupId>org.mvnsearch.ridd</groupId>
<artifactId>ridd-archetype-simple</artifactId>
<version>1.0</version>
<repository>http://www.mvnsearch.org/maven2</repository>
<description>Create RIDD Web Application</description>
</archetype>
</archetypes>
</archetype-catalog>
通过该xml文件,就可以将相关的archetype组织在一起。 我们使用archetype:generate时,需要通过archetypeCatalog来给其制定一个archetype库,这里库分为3种类型:1. 缺省库, 2. 用户库, 3. 第三方库。缺省库,很容易理解,就是archetype插件自身就包含的各个archetype,如果你没有指定任何库,缺省库就会其作用,在archetype插件中使用internal对其进行命名。用户库是指最终用户平时自己使用的库,这个库的文具存放于file://~/.m2/archetype-catalog.xml,在archetype插件中通过local对其进行命名。第三方库,也就是以上两者之外的所有库,如存放于本地磁盘的一个目录,远程服务上等。如果公司内部有很多archetype,就可以建一个这样的库,存在服务器上,大家可以进行共享。第三方库中,由于repo1.maven.org是官方支持的,所以有一个别名:remote,用于标识官方的库。
现在如果你想创建一个archetype,首先确定库,然后根据archetype:generate提供的提示进行创建即可。以下是常见的几种方式:
mvn archetype:generate 调用internal库进行创建
mvn archetype:generate -DarchetypeCatalog=local 调用local库进行创建
mvn archetype:generate -DarchetypeCatalog=http://www.mvnsearch.org/maven2 调用http://www.mvnsearch.org/maven2/archetype-catalog.xml 提供的库进行创建。
了解这些以后,如果你有相关的archetype想和别人共享,只要将库的地址发给对方就可以啦,依据archetype创建将非常简单。
2、interactiveMode:配置与用户的交互模式,默认为true,当需要输入参数时Maven会提示用户输入参数,如果设置为false,则在遇到有输入参数时不会提示用户,Maven会自己生成一些参数,这样可能会出错,一般不需要改变默认设置。
分享到:
相关推荐
### Maven实践-使用Maven开发Web应用 #### Maven简介与优势 Maven是Apache软件基金会支持的一款开源项目管理工具,它通过一个项目对象模型(POM),结合一组标准集合,提供了一套完整的构建规则和最佳实践。Maven的...
读书笔记:Maven 实践学习按理阅读《Maven实战》笔记。
本文将深入探讨如何利用Maven进行Web应用的开发实践。 首先,理解Maven的核心概念是至关重要的。Maven基于项目对象模型(Project Object Model, POM),它是一个XML文件,包含了项目的配置信息,如依赖、构建目标和...
通过学习这些Maven实践知识,开发者能够更好地理解如何利用Maven提升开发效率,降低维护成本,并确保项目的可移植性和可扩展性。无论你是初学者还是有经验的开发者,掌握这些知识点都将对你的项目管理和团队协作...
记住,良好的Maven实践可以帮助你更好地组织项目结构,提高代码的可维护性和复用性。在实际开发中,不断学习和掌握Maven的高级特性,如 profiles、lifecycle、plugins 等,将使你的开发工作更加高效。
Maven是一个强大的项目管理和构建工具,由Apache软件基金会开发。它简化了Java项目的构建过程,通过提供标准化的项目结构、自动化构建流程以及依赖管理功能。Maven的核心概念是基于Project Object Model (POM),这是...
综上所述,"myMaven实例"是一个关于Maven实践操作的案例,涵盖了Maven的核心概念和使用技巧,对于理解和掌握Maven的项目管理和构建流程有着重要的学习价值。通过这个实例,开发者可以更好地理解Maven的工作原理,...
【 Maven-Thrift-Server:构建Thrift服务的Maven实践】 在软件开发中,Thrift是一种高效的跨语言服务开发框架,由Facebook开发并开源。它允许定义数据类型和服务接口,然后自动生成各种编程语言的代码,使得不同...
#### 四、Maven实践案例 - **简单的Maven项目**: - **创建简单项目**:通过命令行工具快速创建一个Maven项目。 - **构建简单项目**:使用Maven命令进行构建。 - **项目对象模型(POM)**:解释Maven项目的XML...
何为Maven 构建,依赖管理,项目信息聚合 Maven核心概念 坐标,依赖,仓库,生命周期,插件 Maven最佳实践 创建、打包、发布、版本管理 项目实战 Nexus(Todo…) M2eclipse(Todo…)
【MAVEN使用最佳实践】 Maven 是一个强大的项目管理和构建工具,它简化了Java应用程序的构建过程,通过一套约定优于配置的原则,使得项目构建、依赖管理和文档生成等工作变得标准化。以下是一些在使用Maven时可以...
本文档内容讲述maven的原理及其最佳的实践方式
”我们可以推断出这是一本关于Maven实践的书籍PDF版本,大小约为35MB。接下来,我们将深入探讨与Maven相关的知识点。 ### Maven简介 Maven是一个Java项目管理工具,它提供了强大的构建生命周期、依赖管理和项目...
2. **Maven实践** - 输入`mvn help:system`命令,可以查看所有Java系统属性和环境变量。 - Maven会下载所需的构件(如pom和jar文件)到本地仓库,默认位置为`C:\Users\<username>\.m2`。 - 复制`M2_HOME/conf/...
本项目旨在为新手提供一个基础的Maven实践环境,帮助他们快速上手。 1. **Maven项目结构** Maven项目遵循一种标准的目录结构,方便理解和管理。在"ROOT"文件夹中,我们通常会看到以下目录和文件: - `src/main/...
- **作者背景**: 许晓斌,国内知名的Maven技术专家,拥有丰富的Maven实践经验和技术积累。作为Maven中文用户组的创始人,许晓斌不仅在Maven技术方面有着深厚的研究,还在开源社区中发挥了重要作用。 - **写作初衷**:...
Apache Maven是一个强大的项目管理工具,它提供了丰富的插件系统来扩展构建过程。exec-maven-plugin是Maven生态系统中的一个插件,它允许用户在Maven构建过程中执行外部命令或脚本。这使得Maven项目可以集成更多的...
Storm 编程实践(安装 Maven-使用 Maven 编译运行代码-mvn 打包) 本文档介绍了 Storm 编程实践的实践报告,涵盖了安装 Maven、使用 Maven 编译运行代码和 mvn 打包等内容。报告中还包括了实验环境的配置、实验内容...