1 什么是Maven
- Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
- Maven是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。
- [相当于iOS cocoapods]
Maven的好处【 lib】
1.方便jar的管理
2.不需要上传jar包到svn
2 如何使用Maven
2.1第一:安装本地Maven
先打开浏览器访问maven官网【rz】,下载下图红色的zip文件
接着解压文件夹到用户目录下C:\Users\guoyongfeng\中,【这里解压的路径随机,个人喜欢放在用户目录而已】
然后需要配置path环境变量
系统变量:MAVEN_HOME = C:\Users\guoyongfeng\apache-maven-3.5.0
系统变量:path = %MAVEN_HOME%\bin
最后打开命令行,输入mvn -version,出现下面内容表示本地maven安装和配置成功了
2.2第二:了解下Maven的仓库
仓库是用来干啥的呢?其实就是用来存放网上下载到本地的jar包
仓库路径默认情况下在用户目录下C:\Users\guoyongfeng.m2\repository
配置仓库路径 在bin目录下的config/settings.xml
- 在 cmd 中敲并回车执行:mvn help:system
maven默认会从上面的服务器(中央仓库) 下载 jar包到本地
在mirrors中添加下面的内容,使用阿里云服务器下载jar包,因为国外的下载太慢了,把国外的注释不用
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<!-- 中央仓库1 -->
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<!-- 中央仓库2 -->
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
2.3第三 修改setting.xml配置文件
2.4第四:安装Eclipse的Maven插件
为什么要安装maven插件?
需要一些命令,需要maven插件
因为以前创建动态的javaweb项目,以后我们创建的是一个maven项目,maven也是一个web项目,java项目
Maven项目是通过pom.xml文件来管理jar包的
Eclipse安装Maven插件有三种方式
Eclipse neon的版本默认已经安装了maven的插件
如果是旧版本的Eclipse,就需要手动安装maven插件,
一种离线安装,比较快
一种在线安装,比较慢
第一种方式:把插件放在eclipse的dropins中【练】
【离线安装】,把插件放在eclipse的dropins
打开preferences点击Maven后,会出现下面的警告框,需要配置下eclipse.ini文件
解决上面的问题,只需要在eclipse.ini文件添加下面两行代码
-vm
C:\Program Files\Java\jdk1.8.0_131\bin\javaw
接着需要点击maven的User Setting选项,配置路径为本地maven的settings.xml路径,如图
第二种方式:点击Eclipse的Help -> Install New Software
在弹出的界面中,添入下面红色框内容点击OK安装【http://m2eclipse.sonatype.org/sites/m2e】
装完后重启Eclipse
安装完后,会在Eclipse的Preference偏好设置中出现maven选项
第三种方式:点击Eclipse的Help ->Eclipse Marketplace
然后在find中搜索maven安装即可
3 Maven常用命令
3.1 Maven的项目结构
ProjectName
|-src
| |-main
| | |-java —— 存放项目的.java文件
| | |-resources —— 存放项目资源文件,如spring, hibernate配置文件
| |-test
| |-java ——存放所有测试.java文件,如JUnit测试类
| |-resources —— 测试资源文件
|-target —— 目标文件输出位置例如.class、.jar、.war文件
|-pom.xml ——maven项目核心配置文件
3.2 eclipse创建Maven简单项目
创建项目前,把eclipse中maven配置文件路径改下
Pom.xml,这里使用【junit 4.10进行单行测试】
<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.gyf</groupId>
<artifactId>test1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 添加依赖 -->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
在学习下面的命令前,打开终端切换到项目路径
3.3 mvn compile
- 完成编译操作
- 执行完毕后,会生成target目录,该目录中存放了编译后的字节码文件。
3.4 mvn clean
执行完毕后,会将target目录删除。
3.4 mvn test
- 完成单元测试操作
- 执行完毕后,会在target目录中生成三个文件夹:surefire、surefire-reports(测试报告)、test-classes(测试的字节码文件)
3.4 mvn package
- 完成打包操作
- 执行完毕后,会在target目录中生成一个文件,该文件可能是jar、war
3.4 mvn install
执行 mvn install命令,完成将打好的jar包安装到本地仓库的操作
执行完毕后,会在本地仓库中出现安装后的jar包,方便其他工程引用
3.4 mvn 组合命令
mvn clean compile
mvn clean test
mvn clean package
mvn clean install
3.5 maven插件集成命令
- 当我们安装完maven的插件到eclipse后,插件提供了一些菜单可用
- 演示下clean install test 的效果
如果再使用过程中,遇到下面问题,解决办法