Maven概述
【什么是Maven】
Maven是一个实现自动化构建的工具软件。
【自动化构建】
构建:构建不是简单的创建一个项目。所谓构建是指执行清理、编译、打包、部署等一系列的操作的过程。
自动化构建:所谓自动化构建是指应用工具软件实现构建的过程。构建过程由软件来完成。
【基本概念】
约定的目录结构 :Maven可以实现自动化的构建,构建过程中会涉及到测试、编译等工作;相关的结果如何进行存储?Maven会将不同结果存储在不同的目录下。
坐标:Maven可以同时管理N多个项目。通过坐标可以快速进行项目的查找。
仓库:Maven是通过仓库对项目进行管理的。仓库有本地仓库和远程仓库。
依赖:工程中所需要用到的其他的工程就称为依赖。
Pom:Project object Model的缩写,称为项目对象模型。Maven是通过pom对工程进行管理的。
【安装Maven】
将Maven压缩包解压缩到本地磁盘。
【配置环境变量】
(1)新建MAVEN_HOME变量
(2)在Path中配置Maven
在path变量的内容字符串前或后加入“%MAVEN_HOME%\bin”。并且以";"作为分隔符。
【测试】
在命令行窗口下输入:mvn --v
注意事项:配置Maven必须先配置Jdk环境变量(JAVE_HOME)。
【约定的目录结构】
(1)为了实现自动化构建,使用Maven时必须按照约定的目录结构创建项目代码。
(2)目录结构:
src
|------main
| |-----java
| |-----resources
|------test
|------java
|------resources
pom.xml
(3)说明:
main :目录下存储Java项目的源代码文件。其中java存储源代码。resources存放资源文件,如:jdbc.properties等。
test :目录下存储项目测试的源代码文件。其中java中存储测试代码,resources存储测试的资源文件。
示例:
(1)java代码
Hello.java:
1 package cn.hl.clazz; 2 3 public class Hello{ 4 public void sayHello(){ 5 System.out.pringln("hello maven"); 6 } 7 }
(2)测试代码
TestHello.java:
1 package cn.hl.clazz; 2 3 import org.junit.Test; 4 5 public class TestHello{ 6 @Test 7 public void test1(){ 8 Hello hello = new Hello(); 9 hello.sayHello(); 10 } 11 }
(3)Pom.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 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 5 <!-- 模型的版本,不能进行修改。从Maven2.0开始使用4.0.0--> 6 <modelVersion>4.0.0</modelVersion> 7 8 <!--三要素:坐标。通过三要素可以定位到一个工程--> 9 <groupId>cn.hl.hello</groupId> 10 <artifactId>hello</artifactId> 11 <version>0.1.1</version> 12 13 <!-- 配置依赖的工程 --> 14 <dependencies> 15 <dependency> 16 <groupId>junit</groupId> 17 <artifactId>junit</artifactId> 18 <version>4.0.0</version> 19 </dependency> 20 </dependencies> 21 </project>