Maven自学笔记之创建Maven项目

1、创建聚合模块
选择菜单项 File—>New—>Other,在弹出的对话框中选择Maven下的Maven Project,然后单击Next按钮,在弹出的New Maven Project 对话框中,使用默认选项(不要选择Create a simple project 选项,那样我们就能使用Maven Archetype),单击Next 按钮,此时m2eclipse 会提示我们选择一个Archetype。这里选择maven-archetype-quickstart,随后按照提示创建Maven聚合模块
 
Maven自学笔记之创建Maven项目_第1张图片

 
注意:需要删除src等多余文件夹,因为聚合模块仅仅是帮助聚合其他模块构建的工具,其本身并没有实质的内容
 
2、创建子模块(Java工程)
右击聚合模块,选择Maven—>New Maven Module Project,出现如下界面:
 
Maven自学笔记之创建Maven项目_第2张图片

 
输入Module Name(不需要选中Create a simple project(skip archetype seletion)),点击下一步,其后创建方法与创建聚合模块相同。
 
3、创建子模块(JavaWeb工程)
 
右击聚合模块,选择Maven—>New Maven Module Project,出现如下界面:
 
Maven自学笔记之创建Maven项目_第3张图片

 
输入Module Name(不需要选中Create a simple project(skip archetype seletion)),点击下一步,弹出如下图界面:
 
Maven自学笔记之创建Maven项目_第4张图片

 
Catalog选择Internal,Filter输入web,选择maven-archetype-webapp,创建Maven Web项目,随后步骤同上。
 
 
注释:1、Maven子项目默认按照maven-archetype-quickstart方式创建
 

 
maven-archetype-plugin创建Java工程
 
1、打开cmd
 
Maven自学笔记之创建Maven项目_第5张图片

 
2、通过打开存放Maven项目文件夹
 
Maven自学笔记之创建Maven项目_第6张图片

 
3、输入mvn archetype:generate,回车
 
Maven自学笔记之创建Maven项目_第7张图片

 
      此时,控制台会打印出所有Maven可以创建的工程类型,默认Maven会选择“242: remote -> org.apache.maven.archetypes:maven-archetype-quickstart (An archetype which contains a sample Maven project.)”,创建一个Maven
构建的Java工程
 
注释:1、如果希望创建Maven构建的webapp项目只需要在242后面输入:245即可(因为245对应了Maven-archetype-webapp), 需要提醒:此处242仅仅表示当前默认是maven-archetype-quickstart,但是该构件不一定每次都对应242(随着Maven升级等情况,其所对应的构件顺序会有所不同),所以还是亲自去上面构件列中查询比较稳妥。
         2、运行插件maven-archetype-plugin,注意冒号的分隔,其格式:groupId:artifactId:version:goal。上面mvn archetype:generate实质上我们是在执行maven-archetype-plugin插件的generate目标。
              需要额外强调:Maven2和Maven3在通过cmd创建Maven项目时存在一定区别,Maven2需要输入完整的maven命令(mvn org.apache.maven.plugins:maven-archetype-plugin:1.0:generate)但是Maven3仅仅只要输入简单的(mvn archetype:generate)即可。原因在于如果Maven2不指明Archetype插件版本,Maven会自动下载最新的版本,进而可能得到不稳定的snapshot版本,但是Maven3始终会自动下载最新的发布版本。
 
4、选择archetype版本号(默认选择最新发布版),回车
 
Maven自学笔记之创建Maven项目_第8张图片

 
5、输入groupId、artifactId、version、package等,回车
 
Maven自学笔记之创建Maven项目_第9张图片

 
此时就成功地在指定目录创建了一个Maven构建的java项目

你可能感兴趣的:(maven)