Maven是什么以及核心特性

Maven是什么?

  • Maven是项目管理工具对软件项目提供构建与依赖管理
  • Maven是Apache下的Java开源项目
  • Maven为Java项目提供了统一的管理方式,已成为业界标准

Maven特性

  • 项目设置遵循统一的规则,保证不同开发环境的兼容性
  • 强大的依赖管理,项目依赖组件自动下载、 自动更新
  • 可扩展的插件机制,使用简单,功能丰富

主要解决的就是先前的工程结构不统一,jar包查找引入困难以及工程打包比较费劲,而maven正好解决了这些问题,提供中央仓库,一站式下载

Maven安装配置

maven由Java开发,需要java运行环境

下载maven:maven.apache.org

  1. Download --> Files 下载解压

  2. 若要使用mvn命令,还需要配置环境变量,将maven 的bin目录添加到Path下maven介绍_依赖管理

Maven项目的标准结构

利用ide创建一个maven工程

New Project,选择Maven工程,next:

maven介绍_sed_02

 

 

maven项目目录结构

目录 用途
${basedir} 根目录,用于保存pom.xml
${basedir}/src/main/java Java源代码目录
${basedir}/src/main/resources 资源目录,保存配置文件、静态图片等
${basedir}/src/test/java 测试类的源代码
${basedir}/src/test/java/resources 测试时需要使用的资源文件
${basedir}/target 项目输出的目录,用于存储jar、war文件
${basedir}/target/classes  字节码(.class)的编译输出目录
${basedir}pom.xml 项目(Project)对象(Object)模型(Model)文件

 

maven坐标介绍

  • Groupld:机构或者团体的英文,采用"逆向域名"形式书写
  • Artifactld:项目名称,说明其用途,例如:cms、oa.....
  • Version:版本号,一般采用"版本+单词"形式,例如:1.0.0.RELEASE

Maven的依赖管理

  • Maven利用dependency(依赖)自动下载、管理第三方Jar
  • 在pomxml文件中配置项目依赖的第三方组件
  • maven自动将依赖从远程仓库下载至本地仓库,并在工程中引用

关于坐标的获取:search.maven.org

这里可以引入坐标:

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.25</version>
</dependency>

依赖命名为:groupId:artifactId:version

Maven仓库

maven介绍_依赖管理_03

 

本地仓库和远程仓库地址设置在setting.xml文件中

IDEA配置:

maven介绍_maven_04

 

 

 国内远程仓库地址

 阿里云maven地址:maven.aliyun.com

maven介绍_maven_05

 

 怎么换远程地址:

1. 改项目的pom.xml文件:

maven介绍_依赖管理_06

 

 2. 统一改maven的配置文件信息setting.xml

maven介绍_sed_07