zoukankan      html  css  js  c++  java
  • Maven插件之maven-archetype-plugin

    Maven插件之maven-archetype-plugin

    时间:2014-03-29

    学过Maven的人,都知道用MyEclipse的Maven插件生成一个项目骨架,比如maven-archetype-quickstart,这个原型就是最常用的之一。

    刚开始使用骨架的时候,感觉很好,减少了重复劳动,提高了开发效率。使用的时间久了,就会发现,Maven Archetype提供的项目骨架不能百分百的满足公司规定的项目结构,不免要手动改些东西。

    此时,自然而然的就会想到:如果能将公司(或项目组)规定的项目结构作为一个骨架原型上传个私服,作为模版供项目使用,就无须修改任何的文件。也减少了项目环境搭建时间、降低了出错率等。

    简单的创建和使用maven-archetype-plugin的方法,可参考:http://www.colorfuldays.org/tag/archetype/ 写的简单,但是说的很明白。

    1、进入模版项目的根目录,执行命令:mvn archetype:create-from-project

    生成以该项目为模版的项目原型(archetype),具体的项目结构在target/generated-sources目录下;

    注意:生成的archetype包含模板项目中所有的文档,避免冗余,可将多余文件删除,并对其项目结构做一些整理!!!

    a、修改archetype目录下pom.xml,将archetype的名称修改成你喜欢的;

    b、可将文件夹改成_rootArtifactId_,这样生成项目结构时,这个目录名称就会变成新的项目名称了;

    这些都整理好了之后,可以将其发布到nexus仓库供其它同事使用了,发布的方法如下:

    2、在archetype目录下的pom.xml中添加maven仓库配置:

    <distributionManagement>

    <repository>

    <id>releases</id>

    <url>http://192.168.10.254:8081/nexus/content/repositories/releases</url>

    </repository>

    <snapshotRepository>

    <id>snapshots</id>

    <url>http://192.168.10.254:8081/nexus/content/repositories/snapshots</url>

    </snapshotRepository>

    </distributionManagement>

    3、发布archetype,到${basedir}/target/generated-sources/archetype目录下,执行命令:

    mvn deploy

    4、使用该原型创建新项目,任意目录下执行命令:

    mvn archetype:generate -DarchetypeGroupId=com.ktr -DarchetypeVersion=1.0 -DarchetypeArtifactId=ktr-archetype

    注:表格的内容为转载。

    以上的方法基于私服(Nexus),如果没有私服,可以参考http://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html

    详细介绍了如何快速创建和使用Archetype。


    完成上传之后,打开从Nexus Indexer中找到上传的archetype







  • 相关阅读:
    oracle 判断字符串是否包含指定内容
    java 如何使用多线程调用类的静态方法?
    oracle 快速复制表结构、表数据
    oracle 清空表数据的2种方式及速度比较
    一、Instrument之Core Animation工具
    net登录积分(每天登录积分仅仅能加一次) 时间的比較
    正规方程 Normal Equation
    笑谈贝叶斯网络(干货)上
    SQL SERVER 面试题
    好的创始人想要改变世界,最好的创始人还要不放弃——扎克伯格清华中文演讲
  • 原文地址:https://www.cnblogs.com/zDanica/p/5471659.html
Copyright © 2011-2022 走看看