码迷,mamicode.com
首页 > 其他好文 > 详细

Maven 系列 二 :Maven 常用命令,手动创建第一个 Maven 项目【转】

时间:2014-06-07 20:21:01      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:c   style   class   blog   code   java   

1.根据 Maven 的约定,我们在D盘根目录手动创建如下目录及文件结构:

bubuko.com,布布扣

2.打开 pom.xml 文件,添加如下内容:

bubuko.com,布布扣
bubuko.com,布布扣
 1 <project xmlns="http://maven.apache.org/POM/4.0.0" 
 2         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 3         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5     <groupId>com.lt</groupId>
 6     <artifactId>mavenDemo2</artifactId>
 7     <packaging>jar</packaging>
 8     <version>0.0.1-SNAPSHOT</version>
 9     <name>mavenDemo2</name>
10     <url>http://maven.apache.org</url>
11     <dependencies>
12         <dependency>
13             <groupId>junit</groupId>
14             <artifactId>junit</artifactId>
15             <version>4.11</version>
16         </dependency>
17     </dependencies>
18     <build>
19         <finalName>mavenDemo2</finalName>
20     </build>
21     <!-- 设置编码 -->
22     <properties>
23         <project.build.sourceEncoding>
24             UTF-8
25         </project.build.sourceEncoding>
26     </properties>
27 </project>
bubuko.com,布布扣
bubuko.com,布布扣

pom.xml文件简单解释(groupId,artifactId,version三个一起描述了项目的唯一标识):

  • groupId - 组名,主项目标识;
  • artifactId - 工程名,子项目(模块)标识;
  • packaging - 打包方式;
  • version - 版本;
  • name - 项目描述名;

3.在 src/main/java/com/lt/maven 下新建 Hello.java 类文件,代码如下:

bubuko.com,布布扣
bubuko.com,布布扣
1 package com.lt.maven;
2 
3 public class Hello {
4     public String sayHello(String name){
5         return "Hello "+name+"!";
6     }
7 }
bubuko.com,布布扣
bubuko.com,布布扣

4.在 src/test/java/com/lt/maven 下新建 HelloTest.java 测试类文件,代码如下:

bubuko.com,布布扣
bubuko.com,布布扣
 1 package com.lt.maven;
 2 
 3 import org.junit.Test;
 4 import static junit.framework.Assert.*;
 5 
 6 public class HelloTest {
 7     @Test
 8     public void testHello(){
 9         Hello hello = new Hello();
10         String results = hello.sayHello("coder");
11         assertEquals("Hello coder!",results);        
12     }
13 }
bubuko.com,布布扣
bubuko.com,布布扣

5.编译项目源代码。打开 cmd 窗口,进入 mavenDemo2 目录,执行 “mvn compile” 命令:

bubuko.com,布布扣

  Maven 的各种功能(包括 maven 的命令)都是通过插件的形式来实现的,使用 maven 构建项目,需要联网到 maven 中央仓库下载所需插件包,并保存到 maven 仓库,仓库默认位置为:${user.home}/.m2/repository,以后用到就不需要再重新下载。

6.清理项目编译,执行 “mvn clean” 命令,将删除 target 目录:

bubuko.com,布布扣

7.运行测试,执行 “mvn test” 命令:

bubuko.com,布布扣

运行成功,将生成如下文件:

bubuko.com,布布扣

8.打包项目,执行 “mvn clean package” 组合命令:

bubuko.com,布布扣

  Maven 自动帮我们完成项目的编译、测试、打包。

运行成功,将生成如下文件:

bubuko.com,布布扣

9.执行 “mvn install” 命令:

bubuko.com,布布扣

  看到的效果跟 mvn clean package 命令一样,但是我们打开仓库位置(${user.home}/.m2/repository/{groupId}/{artifactId}/{version}),可以看到项目被打包发布到了 maven 的仓库,以后其他项目需要依赖到这个项目,就可以通过在 pom.xml 文件中添加依赖来引用:

bubuko.com,布布扣 

  • maven-metadata-local.xml - 记录了项目元数据,包括 groupId,artifactId,version。
  • mavenDemo2-0.0.1-SNAPSHOT.pom - 记录了 mavenDemo2 项目信息以及它的依赖,maven 通过这种方式解决传递依赖,即只要指明了对 mavenDemo2 的依赖,maven 会根据这个文件自动导入 mavenDemo2 对 junit 的依赖。

10.Maven 的目录结构遵循一定的约定,所以我们可以通过下面的命令来自动创建这样的目录结构。执行 “mvn archetype:generate” 命令:

bubuko.com,布布扣

  选择项目骨架类型,直接回车,选择默认的 maven-archetype-quickstart ;选择版本,直接回车,默认选择第 6 项:

bubuko.com,布布扣

  接下来,录入项目相关信息,groupId,artifactId,version(默认1.0-SNAPSHOT),package(默认跟 groupId 一样:com.lt),接着确认:

bubuko.com,布布扣

Maven 系列 二 :Maven 常用命令,手动创建第一个 Maven 项目【转】,布布扣,bubuko.com

Maven 系列 二 :Maven 常用命令,手动创建第一个 Maven 项目【转】

标签:c   style   class   blog   code   java   

原文地址:http://www.cnblogs.com/bluedy1229/p/3773787.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
分享档案
周排行
mamicode.com排行更多图片
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!