在本教程中,我们将向你展示如何使用mvn archetype:generate从现有的Maven模板列表中生成项目。在Maven 3.3.3,有超过1000+个模板,Maven 团队已经过滤掉一些无用的模板。

通常情况下,我们只需要使用下面的两个模板:

  1. maven-archetype-webapp – Java Web Project (WAR)
  2. maven-archetype-quickstart – Java Project (JAR)

1. Maven 1000+ 模板

如果键入命令mvn archetype:generate,1000 +模板会被提示在屏幕上,你没有办法看到它,或者选择什么。为了解决这个问题,输出模板列表,像这样保存为文本文件:

C:\worksp> mvn archetype:generate > templates.txt //waiting few seconds,then exits
Press CTRL + C C:\worksp> vim templates.txt

2. Maven archetype:generate

步骤来指导你如何从现有 Spring-Hibernate 模板来构建Web项目:

2.1 列出 Maven 的模板:

C:\worksp> mvn archetype:generate
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:2.4:generate (default-cli) > generate-sources @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:2.4:generate (default-cli) < generate-sources @ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:2.4:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Interactive mode
[INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0) Choose archetype:
1: remote -> am.ik.archetype:maven-reactjs-blank-archetype (Blank Project for React.js)
2: remote -> am.ik.archetype:msgpack-rpc-jersey-blank-archetype (Blank Project for Spring Boot + Jersey)
3: remote -> am.ik.archetype:mvc-1.0-blank-archetype (MVC 1.0 Blank Project)
4: remote -> am.ik.archetype:spring-boot-blank-archetype (Blank Project for Spring Boot)
5: remote -> am.ik.archetype:spring-boot-docker-blank-archetype (Docker Blank Project for Spring Boot)
6: remote -> am.ik.archetype:spring-boot-gae-blank-archetype (GAE Blank Project for Spring Boot)
7: remote -> am.ik.archetype:spring-boot-jersey-blank-archetype (Blank Project for Spring Boot + Jersey)
8: remote -> at.chrl.archetypes:chrl-spring-sample (Archetype for Spring Vaadin Webapps)

2.2 选择数字 “314” 来使用 ml.rugal.archetype:springmvc-spring-hibernate 模板,并填写详细信息:

注意,这个数字314可能在您的环境有所不同。寻找正确的数字应该看看在上面的步骤1中列出的技术。

1445: remote -> us.fatehi:schemacrawler-archetype-plugin-lint (-)
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive co
ntains): 674: 477
Choose ml.rugal.archetype:springmvc-spring-hibernate version:
1: 0.1
2: 0.2
3: 0.3
4: 0.4
5: 0.5
6: 0.6
Choose a number: 6:
Downloading: https://repo.maven.apache.org/maven2/ml/rugal/archetype/springmvc-s
pring-hibernate/0.6/springmvc-spring-hibernate-0.6.jar
Downloaded: https://repo.maven.apache.org/maven2/ml/rugal/archetype/springmvc-sp
ring-hibernate/0.6/springmvc-spring-hibernate-0.6.jar (30 KB at 6.8 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/ml/rugal/archetype/springmvc-s
pring-hibernate/0.6/springmvc-spring-hibernate-0.6.pom
Downloaded: https://repo.maven.apache.org/maven2/ml/rugal/archetype/springmvc-sp
ring-hibernate/0.6/springmvc-spring-hibernate-0.6.pom (4 KB at 5.3 KB/sec)
Define value for property 'groupId': : com.yiibai.web
Define value for property 'artifactId': : myweb
Define value for property 'version': 1.0-SNAPSHOT: :
Define value for property 'package': com.yiibai.web: :
Confirm properties configuration:
groupId: com.yiibai.web
artifactId: myweb
version: 1.0-SNAPSHOT
package: com.yiibai.web
Y: : y
[INFO] -------------------------------------------------------------------------
---
[INFO] Using following parameters for creating project from Archetype: springmvc
-spring-hibernate:0.6
[INFO] -------------------------------------------------------------------------
---
[INFO] Parameter: groupId, Value: com.yiibai.web
[INFO] Parameter: artifactId, Value: myweb
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: com.yiibai.web
[INFO] Parameter: packageInPathFormat, Value: com/yiibai/web
[INFO] Parameter: package, Value: com.yiibai.web
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: groupId, Value: com.yiibai.web
[INFO] Parameter: artifactId, Value: myweb
[INFO] project created from Archetype in dir: C:\worksp\myweb
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 05:07 min
[INFO] Finished at: 2015-11-03T07:10:56+08:00
[INFO] Final Memory: 16M/176M
[INFO] ------------------------------------------------------------------------

它会生成以下项目文件夹和文件。

 

图片: 生成Eclipse IDE中的项目结构。

注意,要导入项目到Eclipse中,键入命令mvn eclipse:eclipse,并导入它作为一个正常的项目:

c:\worksp> cd myweb
c:\worksp>myweb> mvn eclipse:eclipse

3. 更多示例

如果您知道哪个 archetypeArtifactId 使用,只需跳过交互模式命令:

3.1 maven-archetype-quickstart (Java Project)

$ mvn archetype:generate -DgroupId=com.yiibai.core -DartifactId=ProjectName -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

3.2 maven-archetype-webapp (Java Web Project)

$ mvn archetype:generate -DgroupId=com.yiibai.web -DartifactId=ProjectName -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

使用Maven模板创建项目的更多相关文章

  1. maven 学习---使用Maven模板创建项目

    在本教程中,我们将向你展示如何使用mvn archetype:generate从现有的Maven模板列表中生成项目.在Maven 3.3.3,有超过1000+个模板,Maven 团队已经过滤掉一些无用 ...

  2. BootstrapBlazor 使用模板创建项目

    原文连接:https://www.cnblogs.com/ysmc/p/16101157.html BootstrapBlazor 官网地址:https://www.blazor.zone Boots ...

  3. maven命令创建项目

    1)创建一个Project mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArti ...

  4. maven第一次创建项目太慢解决方法

    问题: 第一次用maven创建项目的时候,因为本地仓库中没有jar包,需要从中央仓库下载,所以会比较慢 解决方法: 因为从中央仓库下载默认使用的国外的镜像下载,速度比较慢,我们可以把镜像修改为从阿里云 ...

  5. maven学习(三)-使用maven来创建项目

    转自https://www.cnblogs.com/xdp-gacl/p/4240930.html maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项 ...

  6. maven自动创建项目目录骨架

    方法一: 1:打开命令窗口 在要创建项目的路径下按住H2SIT ,然后点击右键  ,在弹出菜单中选择 在此处打开命令窗口(W) 2:目录创建 方法二:

  7. IDEA中使用Maven模板创建Maven WebApp项目并使用Tomact来运行项目

    首先需要正确安装Maven和Tomact,Maven安装和Tomact安装步骤,参见别的文章. 一.创建Maven工作空间 点击Finish按钮后,耐心等待.直到出现BUILD SUCCESS为止. ...

  8. IDEA中使用Maven模板创建Servelet项目并使用Tomcat来运行项目

    首先需要正确安装Maven和Tomact,Maven安装和Tomact安装步骤,参见别的文章. 一.创建Maven工作空间 点击Finish按钮后,耐心等待.直到出现BUILD SUCCESS为止. ...

  9. Maven(六)Eclipse使用Maven插件创建项目

    1. 创建Maven版Java工程 1.1 具体步骤 1.2 更改默认JDK版本 默认JDK版本过低 可以通过配置setting.xml来更改JDK版本 加入如下代码 <profile> ...

随机推荐

  1. Java 的双重分发与 Visitor 模式

    双重分发(Double Dispatch) 什么是双重分发? 谈起面向对象的程序设计时,常说起的面向对象的「多态」,其中关于多态,经常有一个说法是「父类引用指向子类对象」. 这种父类的引用指向子类对象 ...

  2. (原创)发布一个c++11开发的轻量级的并行Task库TaskCpp

    TaskCpp简介 TaskCpp是c++11开发的一个跨平台的并行task库,它的设计思路来源于微软的并行计算库ppl和intel的并行计算库tbb,关于ppl和tbb我在前面有介绍.既然已经有了这 ...

  3. 当music-list向上滑动的时候,设置layer层,随其滚动,覆盖图片,往下滚动时候,图片随着展现出来

    1.layer层代码: <div class="bg-layer" ref="layer"></div> 2.在mounted()的时候 ...

  4. RIFF格式简介

    Resource Interchange File Format(简称RIFF),资源交换文件格式,是一种按照标记区块存储数据(tagged chunks)的通用文件存储格式,多用于存储音频.视频等多 ...

  5. maven relativePath

    父项目的pom.xml文件的相对路径.默认值为../pom.xml.maven首先从当前构建项目开始查找父项目的pom文件,然后从本地仓库,最有从远程仓库.RelativePath允许你选择一个不同的 ...

  6. 03-老马jQuery教程-DOM操作

    jQuery DOM操作 在没有jQuery之前,DOM的操作相对来说有点麻烦,尤其是DOM节点的搜索.目前我们已经学习了jQuery的选择器,接下带大家一块学习jQuery的DOM操作,jQuery ...

  7. Yum Priorities

    简介 Linux 发行版比较多,同时还有很多个人或组织维护了某些特定用途的安装/升级源.Yum Priorities 插件可以用来强制保护源.它通过给各个源设定不同的优先级,使得系统管理员可以将某些源 ...

  8. phpMyadmin各版本漏洞

    一: 影响版本:3.5.x < 3.5.8.1 and 4.0.0 < 4.0.0-rc3 ANYUN.ORG 概述:PhpMyAdmin存在PREGREPLACEEVAL漏洞 利用模块: ...

  9. Android 两级菜单栏

    这里来记录下,android 的两级菜单栏,就是顶部切换,和底部的切换.因为在这个上面整了太久的时间,所以特此记录下. 第一种: 先介绍一个网上别人写出来的效果吧,这个当时积分真的很高..CSDN30 ...

  10. thinkphp前台模版字符串截取

    ThinkPHP\Common\extend.php 中管理前台模版的截取{$vons.title|msubstr=0,26} 原始的代码是无法使用截取支持…. 由于涉及到只有汉字检测最为准确 需要加 ...