首页 > 代码库 > Maven安装与配置

Maven安装与配置

一. 什么是maven

Maven是跨平台的项目管理工具, 主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。

1. 高度自动化的项目构建

2. 自动下载jar包, 统一依赖管理

3. 管理项目名称, 开发人员信息等


二. 为什么使用maven

1. 使用IDE的缺点:

a.) 手工操作较多, 编译、测试、部署等工作都是独立的, 很难一步完成

b.) 每个人的IDE配置都不同, 很容易出现本地代码换个地方编译就出错等问题.


2. 使用ant的缺点:

a.) 没有一个约定的目录结构

b.) 必须明确让ant做什么, 什么时候做, 然后编译、打包

c.) 没有生命周期, 必须定义妙及其实现的任务序列

d.) 没有集成依赖管理


3. 使用maven的好处:

a.) 拥有约定的目录结构, 知道你的代码在哪里, 放到哪里去
b.) 拥有一个生命周期, 例如执行mvn install 就可以自动执行编译测试打包等构建过程
c.) 只需要定义一个pom.xml, 然后把源码放到默认的目录, maven会帮你处理其他事情
d.) 拥有依赖管理,仓库管理



三. maven的安装

1. 检查jdk安装的情况(要1.6版本)
   echo %JAVA_HOME%
   Java -version
2. 对apache-maven-3.0.3-bin.zip进行解压缩, 例如解压到如下目录(解压目录最好不要有中文字)



3. 设置系统环境变量, MAVEN_HOME



4. 设置环境变量Path, 将%MAVEN_HOME%\bin加入Path中, 一定要注意要用分号; 与其他值隔开



5. 验证安装是否成功, 打开cmd窗口, 敲入mvn –v 查看



四. 第一个maven项目

1. 首先建立Hello项目同时建立Maven约定的目录结构
Hello
 |------src
          |------main
                   |------java
                   |------resources
          |------test
                   |------java
                   |------resources
 |------pom.xml

2. 在项目Hello根目录建立pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.zdp.maven</groupId>
  <artifactId>Hello</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Hello</name>
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.9</version>
			<scope>test</scope>
		</dependency>		
	</dependencies>
</project>

3. 在src/main/java/com/zdp/maven目录下新建文件Hello.java

package com.zdp.maven;
public class Hello {
	public String sayHello(String name){
		return "Hello "+name+"!";
	}
}

4. 在/src/test/java/com/zdp/maven目录下新建测试文件HelloTest.java

package com.zdp.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest {
	@Test
	public void testHello(){
		Hello hello = new Hello();
		String results = hello.sayHello("litingwei");
		assertEquals("Hello litingwei!",results);		
	}
}

5. 测试一下吧:

a.) 打开cmd命令行, 进入Hello项目根目录执行 mvn compile命令查看根目录变化
b.) cmd 中继续录入mvn clean命令然后再次查看根目录变化
c.) cmd 中录入mvn clean compile命令, 查看根目录变化
d.) cmd 中录入mvn clean test命令查看根目录变化
e.) cmd 中录入mvn clean package命令, 查看根目录变化