maven常用命令及maven的核心概念
Maven常用命令
命令 | 解释 |
---|---|
mvn compile | 编译项目 |
mvn package | 打包发布 |
mvn clean | 清理(删除target目录下编译内容) |
mvn install | 打包后将其安装在本地仓库 |
maven的核心概念
项目对象模型
说明:
行家根据pom.xml的文件,把它转化成项目对象模型(POM),这个时候要解析依赖关系,然后去相对应的行家库中查找到依赖的罐子包。
在清洁,编译,测试,封装等阶段都有相应的插件来做这些事情。
而这些插件会产生一些中间产物。
插件的位置
在maven解压后的位置F:\ work \ course \ maven \ maven有一个bin文件夹,里面有
一个文件m2.config文件
set maven.home default $ {user.home} / m2,其中该路径指明了仓库的存储位置。
这里的插件就是执行的Maven的各种命令所需要的插件。
Maven的坐标
Maven的坐标的主要组成
坐标 | 解释 |
---|---|
的groupId | 定义当前的Maven项目属于哪个项目 |
的artifactId | 定义实际项目中的某一个模块 |
版 | 定义当前项目的当前版本 |
打包 | 定义当前项目的打包方式 |
根据这些坐标,在行家库中可以找到唯一的JAR包
继承管理
1,创建一个项目HelloParent的行家项目
2,Hellofriend,你好项目继承HelloParent
<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.itmayiedu</groupId>
<!-- 一般为项目名称 -->
<artifactId>HelloParent</artifactId>
<version>0.0.1</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<!-- 属于那些分组,一般以公司名称名称开头 -->
<groupId>com.itmayiedu</groupId>
<!-- 一般为当前项目名称 -->
<artifactId>Hello</artifactId>
<version>0.0.1</version>
</dependency>
</dependencies>
</project>
仓库管理
可以根据maven坐标定义每一个jar包在仓库中的存储位置。
大致为:groupId / artifactId / version / artifactId-version.packaging
仓库的分类
- 本地仓库
〜/ .m2目录/库/
每一个用户也可以拥有一个本地仓库 - 仓库远程
中央仓库:Maven的的默认远程仓库
http://repo1.maven.org/maven2
私服:是一种特殊的远程仓库,的英文它架设在局域网内的仓库
它的镜像就是:用来替代中央仓库,速度一般比中央仓库快,例如:阿里云镜像
阿里云镜像
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>