快速学习Maven构建项目(一)
很重要:我们应该知道它的读音,英式美式看个人习惯。
学习参考视频:https://www.bilibili.com/video/av38517296/?p=7
Part1.Maven入门
- 下载、安装、配置Maven的环境变量
- http://maven.apache.org/download.cgi
- 安装JDK
- 配置环境变量:
Win+r打开运行窗口
输入sysdm.cpl打开系统属性->高级->环境变量
新建系统变量,变量名:MAVEN_HOME,变量值:Maven安装路径;
在Path下追加一条属性指向Maven的bin目录%MAVEN_HOME%/bin
- Maven的优点
- Jar包管理:
从Maven中央仓库获取规范的jar包以及相关依赖的jar包,避免自己下载到错误的jar包;
本地仓库统一管理jar包,使jar包与项目分离,减轻项目体积。
Maven项目通过坐标的方式从本地仓库获取jar包;
- 坐标:由公司/组织名(groupId)+项目名/子项目名(artifactId) + 版本号(version)组成;
- 本地仓库:存放很多jar包,供Maven项目使用;
- Maven通过建立本地仓库索引,可以快速找到符合要求的jar包,从而解决效率问题;
- 多个Maven项目都可以从本地仓库中获取jar包;
- 设置本地仓库:maven根目录->conf->settings.xml,将localRepository标签中的路径替换成自己本地仓库的路径;
Maven三种仓库的概念:本地仓库、远程仓库、中央仓库
本地仓库(由自己维护),远程仓库(私服,由公司维护),中央仓库(第三方团队维护),国内一般将中央仓库设置为阿里云Maven仓库镜像,下载较快。
Maven项目从本地获取需要的jar包,如果没有jar包:
没配置远程仓库,去中央仓库下载到本地仓库。
配置了远程仓库,远程仓库也没有jar包,去中央仓库下载jar包到远程仓库。
- maven由纯java语言开发,具有跨平台型,可以在windows、linux、mac上使用。
- 清晰的项目结构;
- 使用Maven将大型项目按照模块拆分成若干个工程,不同的团队维护各自的工程,可以大大提升开发效率;
Eg:比如淘宝分为商品管理、用户管理、订单管理等模块。
Maven项目基本目录结构:
Main里面为代码所存放的位置
src/main/Java存放项目代码
src/main/java/Resources里存放配置文件,比如ssm框架的配置文件
src/main/webapp相当于eclipse中的webContent,myeclipse的webRoot
Test里面存放Junit单元测试的代码(使用比较少)
Src/test/java存放源码
Src/test/resources存放Jnuit单元测试需要的配置文件(不放也可以,如果不放从main里面的配置文件中读取)
Maven工程的启动:
到Maven工程的目录下,打开cmd。转到工程对应的盘下,cd 全路径
进入到目录下之后 mvn tomcat:run,之后就可以打开浏览器测试啦。
一键构建项目:使用如上命令,操作系统中无需安装eclipse和tomcat
如何配置到阿里云仓库下载?
Settings.xml中:
<!-- 设置从阿里云仓库中下载,如果不设置则从maven官方仓库中下载-->
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
Pom.xml详解:
Dependency:依赖标签,配置项目中依赖的jar包坐标,通过坐标到本地仓库找
Maven常用命令:
- Clean: 清理编译后的目录(target)
- Compile: 编译,只编译main目录,不编译test中的代码;
- Test-compile:编译test目录中的代码;
- Test: 运行test里边的代码;
- Package: 打包;
Java项目->打成jar包;
Web项目->打成war包;
- install:发布项目到本地仓库,用在打jar包上,打成jar包可以被其他项目使用;
- tomcat:run 一键构建项目;