博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Apache Maven项目提供的Archetype插件详解
阅读量:4177 次
发布时间:2019-05-26

本文共 2520 字,大约阅读时间需要 8 分钟。

Archetype插件是Apache Maven项目提供的一个工具类的通用插件。

Archetype插件可以基于已有的模板创建一个Maven项目,开发人员可以在此基础上进行扩展开发。在这里,项目模板就被称为archetype。

Archetype插件也可以基于已有的一个Maven项目创建模板。

Archetype插件的最新版本是2015.8发布的2.4。

1.Archetype插件提供的4个可以直接使用的goal

  •  已经过时不用了
  •  这是Archetype插件最常用的功能,用以从模板创建一个Maven项目
  •  用以从一个Maven项目创建模板
  •  在一个指定的Maven库中查找可以的模板,并更新模板目录

2.
Archetype插件中的模板Archetype插件中提供了大量的模板,直接执行
mvn archetype:generate命令,你可以看到大量模板一闪而过。那么如何在大量模板中选择合适的模板呢?

1)通过关键字过滤模板

例如,对于mvn archetype:generate -Dfilter=org.apache:struts,命令表示从groupId包含"org.apache"、且artifactId包含"struts"的模板中选择。

2)选择指定类型的模板

Archetype插件为模板提供了分类如下:

  • remote,远程Maven库中提供的模板。mvn archetype:generate默认使用该类模板
  • local,本地Maven库中提供的模板。mvn archetype:generate默认使用该类模板,作为remote的补充。Maven初始为空,执行mvn install时会将当前项目加入local模板库
  • internal,Apache Maven项目默认提供的模板。mvn archetype:generate -DarchetypeCatalog=internal使用该类模板
  • file://...,给出本地计算机上的一个路径,在该路径下有一个archetype-catalog.xml文件(如果是其他文件名则必须给出),其中配置了模板
  • http://...,给出网络上的一个路径,在该路径下有一个archetype-catalog.xml文件(如果是其他文件名则必须给出),其中配置了模板

例如,对于mvn archetype:generate -DarchetypeCatalog=http://cocoon.apache.org,命令默认从http://cocoon.apache.org/archetype-catalog.xml中选择可以模板。

3.Archetype插件中的其他goal

此外,Archetype插件还为其maven-archetype打包配置提供了3个goal,这3个goal可以绑定到Maven内置的生命周期阶段,在执行对应的生命周期阶段时连带执行:

  • 绑定到package阶段,用于构建archetype jar artifact
  • 绑定到integration-test阶段,用于执行archetype integration tests
  • 绑定到install阶段,用于更新local catalog

上述3个goal不能直接被执行,如果要执行,需要在POM中进行如下配置(以
Archetype插件2.4为例):

org.apache.maven.archetype
archetype-packaging
2.4
org.apache.maven.plugins
maven-archetype-plugin
2.4

4.Archetype插件generate的基本用法

Archetype插件基于模板创建一个Maven项目的步骤如下:

  • 选择所需的模板

一个插件中可以包含多个模板,每个模板都有唯一的名字。如果知道模板的准确名字可以在mvn命令中以archetypeArtifactId参数给出,否则根据mvn命令的提示进行选择。

  • 配置模板的必要参数

参数其实就是配置生成的Maven项目的信息。一个Maven项目,至少应该包含如下信息,这些信息就是创建Maven项目时必须为模板提供的参数:

    • groupId,类似于package
    • artifactId,必须唯一
    • version,默认值为1.0-SNAPSHOT

注意:Maven插件本身也包含如上信息,但是区别于Maven项目的信息。

  • 执行以创建新Maven项目

Archetype插件创建Maven项目的基本用法是直接执行mvn archetype:generate,这是以交互的模式进行,mvn会提示用户选择模板(通过编号选择),输入选择的模板后,mvn会陆续提示输入必要的groupId和artifactId,versioin可以采用默认值1.0-SNAPSHOT。

补充,Archetype插件2.4默认提供的internal类型的模板(共10个)如下图所示:

通过这些模板就足以创建满足常见基本需求的的Maven项目框架。

例如,mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp命令就可以创建一个Web应用。

参考文献:

http://maven.apache.org/archetype/maven-archetype-plugin/

你可能感兴趣的文章
Hibernate中的数据的获取策略(fetching)
查看>>
Hibernate中通过HQL/JPQL查询的方式实现动态数据获取
查看>>
Hibernate中通过FetchProfile的方式实现动态数据获取
查看>>
Hibernate应用中通过JPA配置Entity缓存
查看>>
Hibernate中配置二级缓存的并发策略
查看>>
Hibernate中的Query cache(查询缓存)
查看>>
Hibernate的interceptors与events
查看>>
Android常用代码
查看>>
Cardboard虚拟现实开发初步(二)
查看>>
60个优秀的免费3D模型下载网站
查看>>
Cardboard虚拟现实开发初步(三)
查看>>
Android native和h5混合开发几种常见的hybrid通信方式
查看>>
Vista/Win7 UAC兼容程序开发指南
查看>>
IOS程序开发框架
查看>>
安装jdk的步骤
查看>>
简述JAVA运算符
查看>>
简易ATM源代码及运行结果
查看>>
简述Java中的简单循环
查看>>
用JAVA实现各种乘法表
查看>>
for双重循环实现图形
查看>>