一.什么是Maven
Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性
,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta
项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
Maven这个单词来自于意第绪语,意为知识的积累,最早在Jakata Turb
ine项目中它开始被用来试图简化构建过程。当时有很多项目,它们的Ant
build文件仅有细微的差别,而JAR文件都由CVS来维护。于是Maven创始者开始了Maven这个项目,
该项目的清晰定义包括,一种很方便的发布项目信息的方式,以及一种在多个项目中共享JAR的方式。
1.Java环境变量设置就不说。 但是配置Maven需要检查下Java环境变量的设置。需要检查JAVA_HOME环境变量以及
Java命令
wanyakundeMacBook-Pro:Library wanyakun$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home
wanyakundeMacBook-Pro:Library wanyakun$ java -version
java version "1.7.0_60-ea"
Java(TM) SE Runtime Environment (build 1.7.0_60-ea-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
wanyakundeMacBook-Pro:Library wanyakun$
复制代码
2.接着到http://maven.apache.org/download.html下载Maven安装文件,如apache-maven-3.2.3-bin.tar.gz,然后解压到
本地目录
接下来,我们需要设置M2_HOME(IntelliJ默认为M2_HOME)环境变量指向apache-maven-3.2.3,并且把Maven安装目
录下的bin/文件夹添加到系统环境变量PATH中去:
vim打开/etc/profile文件 加入如下代码:
export M2_HOME=/Users/wanyakun/Documents/apache-maven-3.2.3
export PATH=$PATH:$M2_HOME/bin
设置最大内存 MAVEN_OPTS=-Xmx1024M防止 项目过大 导致 内存不足
第一次使用 mvn -help:system(打印 系统属性和环境变量)会去选择 maven -help -plugin.jar包
至此,安装完成,我们可以运行以下命令检查Maven安装:
echo $M2_HOME
mvn –version
wanyakundeMacBook-Pro:~ wanyakun$ echo $M2_HOME
/Users/wanyakun/Documents/apache-maven-3.2.3
wanyakundeMacBook-Pro:~ wanyakun$ mvn -version
Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-12T04:58:10+08:00)
Maven home: /Users/wanyakun/Documents/apache-maven-3.2.3
Java version: 1.7.0_60-ea, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.10.1", arch: "x86_64", family: "mac"
wanyakundeMacBook-Pro:~ wanyakun$
三.第一个maven项目
项目结构
hello-world
src
main
java
package
test
java
package
pom.xml
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">
<artifactId>helloworld</artifactId>
<modelVersion>4.0.0</modelVersion>
<groupId>com.yzk.maven</groupId>
<version>1.0-SNAPSHOT</version>
<groupId>junit</groupId>
<name>maven hello world project</name>
<dependencies>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
</project>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
</dependencies>
</dependencies>
HelloWorld.java
package com.yzk.maven.helloworld;
public class HelloWorld{
return "maven hello world project>>>>>>>>>>>>>>";
return "maven hello world project>>>>>>>>>>>>>>";
public String sayHello(){
}
}
HelloWorldTest.java
package com.yzk.maven.helloworld;
import org.junit.Test;
@Test
public class HelloWorldTest{
System.out.println(new HelloWorld().sayHello());
System.out.println(new HelloWorld().sayHello());
public void testHelloWorld(){
}
}
编译命令
mvn clear 删除了构建目录 mvn compile 编译项目 mvn test 测试运行项目
Maven jar包 依赖管理流程(项目) >>>工作空间 >>>> 本地仓库(私有库)>>>> 远程仓库(中央库)