美文网首页程序员
Maven 项目模板

Maven 项目模板

作者: 41uLove | 来源:发表于2018-10-15 17:45 被阅读0次

    Archetype介绍

    Archetype是一个Maven项目的模板工具包,它定义了一类项目的基本架构。Archetype为开发人员提供了创建Maven项目的模板,同时它也可以根据已有的Maven项目生成参数化的模板。通过Archetype,开发人员可以很方便地将一类项目的最佳实现应用到自己的项目中。在一个Maven项目中,开发者可以通过Archetype提供的范例快速入门并了解该项目的结构与特点。
    官方文档:https://maven.apache.org/archetype/index.html

    Archetype使用

    IDEA中创建

    在IDEA中,我们可以通过New Project – Maven – Create from archetype,选择某个archetype快速创建模板项目

    IDEA创建模板
    命令创建
    mvn archetype:generate
    
    • 输入命令后,Archetype插件会输出一个Archetype列表供用户选择;选择自己想要使用的Archetype,输入对应编号
    • 提示输入一些基本参数,如groupId,artifactId,version,package等
    • Archetype插件生成项目骨架


      命令创建
    过滤器方式创建
    过滤器方式
    跳过了选择archetype步骤

    常用的archetype

    maven-archetype-quickstart

    默认的Archetype,基本内容包括:

    • 一个包含junit依赖声明的pom.xml
    • src/main/java主代码目录及一个名为App的类
    • src/test/java测试代码目录及一个名为AppTest的测试用例

    maven-archetype-webapp

    一个最简单的Maven war项目模板,当需要快速创建一个Web应用的时候可以使用它。生成的项目内容包括:

    • 一个packaging为war且带有junit依赖声明的pom.xml
    • src/main/webapp/目录
    • src/main/webapp/index.jsp文件
    • src/main/webapp/WEB-INF/web.xml文件

    Archetype开发

    创建自定义模板

    1.在maven项目下,执行mvn archetype:create-from-project,在target/generated-sources/archetype目录下生成Archetype project
    2.cd target/generated-sources/archetype后,mvn install安装archetype project到本地仓库

    ps:如果是maven多模块项目,在根目录下执行mvn archetype:create-from-project

    mvn install后,会在本地的maven仓库,按照maven坐标创建对应的archetype文件

    步骤

    官方介绍:https://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html

    例子:

    本地仓库中生成的archetype模板

    使用自定义模板

    1.在当前的目录下,mvn archetype:generate -DarchetypeCatalog=local,查看本地archetype列表

    2.choose number,按步骤输入基本参数groupId/artifactId/version/package

    3.在当前目录下,以artifactId为目录创建一个新的项目

    添加到IDEA

    添加自定义属性参数

    Archetype配置

    mvn archetype:generate -DarchetypeCatalog=local

    对应的本地archetype列表,在本地maven仓库的archetype-catalog.xml中 ,比如: ~/.m2/repository/archetype-catalog.xml

    IDEA中的archtype配置,在 ~/Library/Caches/IntelliJIdea2017.1/Maven/Indices/UserArchetypes.xml中

    相关文章

      网友评论

        本文标题:Maven 项目模板

        本文链接:https://www.haomeiwen.com/subject/mlgfzftx.html