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 查看
6. Maven安装目录分析
a.) bin:含有mvn运行的脚本
b.) boot:含有plexus-classworlds类加载器框架
c.) conf:含有settings.xml配置文件
d.) lib:含有Maven运行时所需要的java类库
e.) LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍
四. 第一个maven项目
1. 首先建立Hello项目同时建立Maven约定的目录结构
Hello
|------src
|------main
|------java (存放项目的Java文件)
|------resources (存放项目的资源文件, 如: spring, hibernate配置文件)
|------test
|------java (存放所有测试的Java文件, 如: JUnit测试类)
|------resources (存放测试的资源文件)
|------target (项目编译后文件)
|------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命令, 查看根目录变化
五. 第二个maven项目
1. 首先建立HelloFriend项目同时建立Maven约定的目录结构
HelloFriend |------src
|------main
|------java (存放项目的Java文件)
|------resources (存放项目的资源文件, 如: spring, hibernate配置文件)
|------test
|------java (存放所有测试的Java文件, 如: JUnit测试类)
|------resources (存放测试的资源文件)
|------target (项目编译后文件)
|------pom.xml
2. 在项目HelloFriend根目录建立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>HelloFriend</artifactId> <version>0.0.1-SNAPSHOT</version> <name>HelloFriend</name> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.9</version> <scope>test</scope> </dependency> <dependency> <groupId>com.zdp.maven</groupId> <artifactId>Hello</artifactId> <version>0.0.1-SNAPSHOT</version> <scope>compile</scope> </dependency> </dependencies> </project>
3. 在src/main/java/com/zdp/maven目录下新建文件HelloFriend.java
4. 在/src/test/java/com/zdp/maven目录下新建测试文件HelloFriendTest.java
5. 在HelloFriend目录下执行命令mvn package, 系统报错说没有找到依赖
6. 需要重新构建Hello第一个项目并安装到数据仓库, 在命令行Hello根目录下执行mvn clean install
7. 重新在HelloFriend目录下执行命令mvn package
来自:http://blog.csdn.net/zdp072/article/details/36057201