1. 如何使用Maven的archetype快速生成一个新项目

2. Maven之自定义archetype生成项目骨架(一)

3. 使用maven3 创建自定义的archetype

4. 使用maven3 创建自定义的archetype .

5. 使用maven3 创建自定义的archetype(项目模板)

一、实现步骤

1. 引入pom.xml

    <plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>3.0.1</version>
</plugin>
</plugins>

2. 生成archetype

mvn archetype:create-from-project

3. 部署到本地

进入generated-sourced/archetype目录,运行maven命令:

mvn install

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名字。

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

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

4. 部署到maven服务器

修改generated-sourced/archetype目录下pom.xml,加入如下内容:

       <distributionManagement>
<repository>
<id>nexus</id>
<name>nexus Releases</name>
<url>http://...</url>
</repository>
<snapshotRepository>
<id>nexus</id>
<name>nexus Snapshots</name>
<url>http://...</url>
</snapshotRepository>
</distributionManagement>

运行maven命令:

mvn deploy

这样就把自定义的archetype安装到maven服务器仓库了。

5. 使用Archetype生成新项目

现在maven3支持交互交换式生成项目,运行下面的命令:

mvn archetype:generate -DarchetypeCatalog=local

(archetypeCatalog设置为local指明从本地找Archetype,这样列出来的Archetype会少一些,方便查找)

跟着提示就可以生成新项目了。

Maven项目骨架搭建的更多相关文章

  1. JAVA基础-----Maven项目的搭建

    Maven项目的搭建 一.前言 maven官网:http://maven.apache.org/, 文章简介:本文章从三个模块来了解Maven,分别是 Maven的基本概念~, Maven项目的安装和 ...

  2. 基于SSM框架的简易的分页功能——包含maven项目的搭建

    新人第一次发帖,有什么不对的地方请多多指教~~ 分页这个功能经常会被使用到,我之前学习的时候找了很多资源,可都看不懂(笨死算了),最后还是在朋友帮助下做出了这个分页.我现在把我所能想到的知识 做了一个 ...

  3. Intellj新增maven项目骨架

    我们经常用maven骨架构建项目,本来普通的几个archetype就够用的,但是近来要来时开发liferay项目 相关的项目骨架Intellj IDEA就没有内置,所以就想添加进去,  有两个办法可以 ...

  4. 如何搭建maven项目和搭建ssm框架

    1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One ...

  5. 《maven实战》笔记(2)----一个简单maven项目的搭建,测试和打包

    参照<maven实战>在本地创建对应的基本项目helloworld,在本地完成后项目结构如下: 可以看到maven项目的骨架:src/main/java(javaz主代码)src/test ...

  6. maven项目快速搭建SSM框架(一)创建maven项目,SSM框架整合,Spring+Springmvc+Mybatis

    首先了解服务器开发的三层架构,分配相应的任务,这样就能明确目标,根据相应的需求去编写相应的操作. 服务器开发,大致分为三层,分别是: 表现层 业务层 持久层 我们用到的框架分别是Spring+Spri ...

  7. 【Maven实战技巧】「插件使用专题」Maven-Archetype插件创建自定义maven项目骨架

    技术推荐 自定义Archetype Maven骨架/以当前项目为模板创建maven骨架,可以参考http://maven.apache.org/archetype/maven-archetype-pl ...

  8. maven环境配置详解,及maven项目的搭建及maven项目聚合

    首先:Maven 3.2.1:不同版本中仓库中文件是不一样的,Maven运行,先找用户配置,再找全局配置 1. Maven全局配置:全局统一的配置文件,在maven的安装目录中 2. Maven用户配 ...

  9. windows下的java+maven项目环境搭建

    年底了,进公司刚好半年,于是全新一轮的挑战开始:让我接触java项目了,真的是全新的,完全一片茫然.经过了半个月的折腾,把环境搭了一遍又一遍,还可以小小的改一下程序,还OK啦~继续努力.接下来,进入正 ...

随机推荐

  1. 分享知识-快乐自己:SSH 整合 Demo

    楼主A: XML 版 SSH整合Demo https://github.com/MlqBeginner/BlogGardenWarehouse/blob/master/SSH%E6%95%B4%E5% ...

  2. 机器学习(十九)— xgboost初试kaggle

     1.官网下载kaggle数据集Homesite Competition数据集,文件结构大致如下: 2.代码实战 #Parameter grid search with xgboost #featur ...

  3. JavaUtil_08_StringUtil_commons-lang3 之 StringUtils

    二.参考资料 1.[commons]字符串工具类——commons-lang3之StringUtils

  4. javaScript-进阶篇(三)

    1.Window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法: 2.JavaScript 计时器 在JavaScript中,我们可以在设定的时间间隔 ...

  5. hdu-5646 DZY Loves Partition(贪心)

    题目链接: DZY Loves Partition Time Limit: 4000/2000 MS (Java/Others)     Memory Limit: 262144/262144 K ( ...

  6. linux命令学习笔记( 7 ) : mv 命令

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令, 经常用来备份文件或者目录. .命令格式: mv [选项] 源文件或目 ...

  7. bzoj3224Treap

    Splay版本的会补... 在学了2个小时Splay之后深感Treap的优越 特地又花了20分钟打了个Treap 至于这些平衡树的优缺点 可以用平衡方式来直观的感受到 现在平衡树们面对着这样的一个问题 ...

  8. POJ1061 青蛙的约会 和 LOJ2721 「NOI2018」屠龙勇士

    青蛙的约会 Language:Default 青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 133470 Accep ...

  9. VS2008中_T的作用

    引用: VC++里面定义字符串的时候,用_T来保证兼容性.VC++支持ascii和unicode两种字符类型,用_T可以保证从ascii编码类型转换到unicode编码类型的时候,程序不需要修改. 如 ...

  10. Poj1207 The 3n + 1 problem(水题(数据)+陷阱)

    一.Description Problems in Computer Science are often classified as belonging to a certain class of p ...