什么是 Maven

Maven 是一个项目管理工具,它包含了一个 项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。

Maven 能解决什么问题

1、快速导入,管理jar包,避免版本冲突

2、自动编译,自动运行单元测试,打包,生成报表,帮你部署项目,生成 Web 站点

Maven安装

官网  Maven – Welcome to Apache Maven

 

 Maven 下载后,将 Maven 解压到一个没有中文没有空格的路径下

Maven 软件版本测试 

 Maven 仓库的分类

 本地仓库 :用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包,优先从本地仓库查找
        默认本地仓库位置在 ${user.dir}/.m2/repository,${user.dir}表示windows 用户目录。
 远程仓库:如果本地需要插件或者 jar 包,本地仓库没有,默认去远程仓库下载。
        远程仓库可以在互联网内也可以在局域网内。局域网内称私服
 中央仓库 :在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中
央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包
含了世界上大部分流行的开源项目构件。

私服的作用 :保存具有版权的的资源,包含购买或自主研发的jar。中央仓库的jar都是开源的,不能具有版权的资源

Maven 常用命令

compile
        compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target目录下。
cmd 进入命令状态,执行mvn compile,如提示BUILD SCUCCESS 表示成功

clean
        clean 是 maven 工程的清理命令,执行 clean 会删除 target 目录及内容。
package
        package 是 maven 工程的打包命令,对于 java 工程执行 package 打成 jar 包,对于web 工程打成war包。
install
        install 是 maven 工程的安装命令,执行 install 将 maven 打成 jar 包或 war 包发布到本地仓库。
从运行结果中,可以看出:
当后面的命令执行时,前面的操作过程也都会自动执行,

 idea 的 的 maven 配置

idea 中创个 建一个 maven 的 的 web 工程

 有时会缺少resources目录,手动添加

Maven 的依赖管理 

通过 pom.xml 文件配置要引入的 jar 包的坐标再读取坐标并到仓库中加载 jar 包,这
样我们就可以直接使用 jar 包了,为了解决这个过程中速度慢的问题,maven 中也有索引的概念,通过建立索引,可以大大提高加载 jar 包的速度,使得我们认为 jar 包基本跟放在本地的工程文件中再读取出来的速度是一样的。这个过程就好比我们查阅字典时,为了能够加快查找到内容,书前面的目录就好比是索引,有了这个目录我们就可以方便找到内容了,一样的在 maven 仓库中有了索引我们就可以认为可以快速找到 jar 包。 

 

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐