`
837062099
  • 浏览: 112567 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

使用maven 创建自定义的archetype(工程骨架)

 
阅读更多
创建自己的archetype一般有两种方式,比较简单的就是create from project

1、首先使用eclipse创建一个新的maven project,然后把配置好的一些公用的东西放到相应的目录下面
    比如说会将一些常用的java代码存放到src/main/java目录下面;
    会将一些通用的配置文件放到src/main/resources目录下面;
    如果是javeEE工程,还会有一些jsp等等的文件存放到src/main/webapp目录下面


2、然后在maven project的pom.xml文件中添加插件
    ================================================
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-archetype-plugin</artifactId>
            <version>2.2</version>
        </plugin>
    </plugins>
    ================================================
例如:



3、打开cmd窗口,cd到刚才创建的maven project的根目录,运行maven命令:
    mvn archetype:create-from-project
    然后会在target目录下面生成generated-sources目录,这个就是生成的 archetype

4、cd进入generated-sourced/archetype目录,运行maven命令:
    mvn install
    这样就把自定义的archetype安装到本地仓库了。
    archetype安装的地址是在maven安装目录下面的conf/settings.xml文件中指定的(<localRepository>字节)。
    默认会在  ~/.m2  目录下面生成一个archetype-catalog.xml文件(和默认的settings.xml在同一个目录),
    声明了该archetype的groupId、artifactId和其他属性。
    因为Eclipse创建maven项目过程中,选择的“Default Local”指向的地址就是 ~/.m2,
    所以文件archetype-catalog.xml会被eclipse自动读取,
    使用eclipse创建maven项目的时候可以在"Default Local"一项中找到刚才自定义archetype名字。
   
5、当eclipse的maven设置中,User Settings选择的settings.xml指向的本地仓库地址和maven安装目录下
    的那个settings.xml中指向路径一样的时候,eclipse才能读取得到刚才安装的自定义的archetype的源文件,
    这样eclipse才能复制源文件并创建项目。

6、如果想要卸载刚才安装的archetype,只需要将~/.m2目录下面的archetype-catalog.xml文件中对应的<archetype>字节段删掉,
    并且把本地仓库中相应groupId和artifactId下面的文件删掉就可以了。

7、安装到本地仓库中的archetype只可以被自己使用,如果想要共享,那么在第四步的时候使用deploy命令,不要使用install命令。
=====================================================================================
=====================================================================================

----------------------------------------------------------------------------------


1自定义原型

1.1创建原型项目
要定制自己的原型,首先就要创建原型项目来进行定制:
mvnarchetype:create -DgroupId=com.cdai.arche -DartifactId=test-archetype-DarchetypeArtifactId=maven-archetype-archetype
生成项目结构如下:


1.2安装原型到本地
在pom.xml中添加:
    <build>
       <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-archetype-plugin</artifactId>
                <version>2.2</version>
            </plugin>
        </plugins>
    </build>
在pom.xml所在目录下执行:
         mvn archetype:create-from-project
就会在target目录下面生成generated-sources目录,这个就是生成的archetype
 
切换目录后执行:
         cd target\generated-sources\archetype
         mvn install
这样就把自定义的archetype安装到本地仓库了。archetype安装的地址是在maven安装目录下面的conf/settings.xml文件中指定的<localRepository>。默认会在  ~/.m2  目录下面生成一个archetype-catalog.xml文件。
 
archetype-catalog.xml内容如下:
===============================================================================
<?xmlversion="1.0" encoding="UTF-8"?>
<archetype-catalogxsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0http://maven.apache.org/xsd/archetype-catalog-1.0.0.xsd"
   xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <archetypes>
    <archetype>
     <groupId>com.cdai.arche</groupId>
     <artifactId>test-archetype-archetype</artifactId>
     <version>1.0-SNAPSHOT</version>
     <description>test-archetype-archetype</description>
    </archetype>
  </archetypes>
</archetype-catalog>

2从已有项目生成原型
只需执行上面列举的两条命令,即可将一个已有项目安装到本地原型库:
         mvn archetype:create-from-project
         cd target\generated-sources\archetype
         mvn install

3生成项目

3.1用原型生成项目
mvn archetype:generate -B-DarchetypeCatalog=local -DarchetypeRepository=local -DarchetypeGroupId=com.cdai.arche-DarchetypeArtifactId=test-archetype -DarchetypeVersion=0.0.1-SNAPSHOT-DgroupId=com.cdai -DartifactId=test
 
参考资料
使用maven3 创建自定义的archetype
http://blog.csdn.net/uncleja/article/details/7252780

分享到:
评论
1 楼 LeanTaoT 2018-01-03  
我deploy到私服,生成到哪里去了?我怎么找不到,public、release、snapshot的archetype-catalog.xml,都找不到,麻烦大牛指点一二。

相关推荐

    SpringMVC精品资源--maven之自定义archtype生成自定义项目骨架 1.该项目是一个自定义的arch.zip

    在本资源中,我们将探讨如何通过Maven的自定义archetype功能来创建自定义项目骨架,以便快速搭建符合特定需求的SpringMVC项目。 首先,让我们理解什么是Maven Archetype。Archetype是Maven提供的一种模板机制,可以...

    【maven】多子模块maven模板工程archetype创建过程

    本篇文章将详细介绍如何使用Maven Archetype来创建一个多子模块的模板工程。 一、理解Maven Archetype Maven Archetype是Maven提供的一个用于创建项目骨架的工具。它允许我们定义一组模板文件,这些文件将被用来...

    micaicms-web-archetype:maven之自定义archtype生成自定义项目骨架 1.该项目是一个自定义的archetype,通过该archetype可以生成一个自定义的基础项目框架 2.改项目框架由:Spring,SpringMVC,MyBatis,架构,前端采用bootstrap,jquery,jstl等架构

    描述:通过maven的自定义archetype创建自定义的项目框架 1.下载项目到你的本地workspace 2.进入到你该项目的根目录(也就是pom.xml所在的目录) 3.执行命令把该项目安装到你的本地仓库 mvn clean install 4.执行命令...

    micaicms-web-modules-archetype:maven之自定义archetype生成多模块结构的项目骨架

    #micaicms-web-modules-archetypeMaven之自定义archetype生成多模块结构的基础项目骨架一:项目骨架介绍该项目骨架集成了Spring,SpringMVC,MyBatis,jsp,jquery,bootstrap等二:项目骨架使用介绍1.首先下载该...

    maven基础学习(四)-简单实例(使用Archetype生成项目骨架)

    在Java开发领域,Maven是一个不可或缺的工具,它极大地简化了构建、...通过它,开发者可以轻松创建符合规范的项目结构,同时也能自定义Archetype以适应特定项目需求。熟悉这个工具,将使你在Java开发旅程中事半功倍。

    maven archetype-catalog.xml 下载

    使用Maven骨架时,开发者可以自定义骨架,创建适合自己团队或项目的模板。这不仅提高了开发效率,还能确保团队遵循一致的编码规范和项目结构。通过`archetype-catalog.xml`文件,开发者可以方便地发现和使用这些定制...

    java maven archetype-catalog.xml

    骨架创建完成后,可以通过发布到私有或公共Maven仓库,让其他人使用`mvn archetype:generate`命令时能够找到并使用这些定制的骨架。 总之,Java Maven的archetype-catalog.xml文件对于快速初始化项目至关重要,尤其...

    maven-archetype-quickstart-1.4.jar.zip

    在使用`maven-archetype-quickstart-1.4`创建项目后,开发者会得到以下基本结构: 1. `pom.xml` - Maven的项目对象模型,包含了项目依赖、构建配置、插件等信息。 2. `src/main/java` - 存放源代码的目录,一般按照...

    自定义maven插件的实现

    - 使用Maven的`maven-plugin-plugin`来生成基础骨架。在命令行中运行: ``` mvn archetype:generate -DgroupId=com.yourcompany -DartifactId=your-plugin -DarchetypeArtifactId=maven-plugin-archetype ``` -...

    一个SSM框架的maven archetype

    通过指定特定的archetype,开发者可以快速生成符合特定结构和配置的项目骨架,SSM的maven archetype就是这样一种模板,它可以自动生成包含Spring、SpringMVC和MyBatis配置的项目结构。 5. 使用SSM archetype创建...

    archetype-catalog.xml

    对于自定义Archetype,你需要编写自己的`pom.xml`和`archetype-resources`目录结构,然后使用`mvn archetype:create-from-project`命令将当前项目打包成一个新的Archetype。 总的来说,`archetype-catalog.xml`是...

    Custom Maven Plugin

    1. **选择插件骨架**:使用Maven Archetype插件创建插件项目的骨架。例如,可以使用`maven-archetype-plugin`的`generate`目标来创建一个新的Maven插件项目模板。 2. **定义插件元数据**:在`pom.xml`中配置插件的...

    maven制作模板,发布到本地和远程

    Maven 提供了一个强大的工具——Archetype(模板),它可以帮助我们快速地创建出符合特定结构的项目骨架。通过使用 Archetype,可以极大地减少初始项目搭建的时间,并且保证项目结构的一致性。 #### 二、制作 Maven...

    archetype_maven

    Archetype的创建者可以自定义archetype-resources中的任何内容,比如添加特定的Java类、配置文件或者特定的脚本。此外,他们还可以通过修改pom.xml中的archetype-metadata.xml来定义生成新项目时的变量,这些变量...

Global site tag (gtag.js) - Google Analytics