Maven入门级基础使用介绍

Maven是什么

Maven的中文本意是“专家、内行”的意思。
Apache Maven是一个主要针对Java的项目管理及综合工具,由Apache软件基金会所提供。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。
Maven提供了开发人员的方式来管理:

  • Builds
  • Documentation
  • Reporting
  • Dependencies
  • SCMs
  • Releases
  • Distribution
  • mailing list
    概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。

Maven有什么作用

  1. 依赖管理
    减少对包的重复存储,最大限度的降低代码包大小
  2. 插件
    降低工作量,自动化构建
  3. 聚合和继承
    降低包的冲突及重复引用

Maven安装

请参见Maven官网-Install
注:在安装前需确认jdk环境已经安装配置完成。绝大多数IDE安装包中已集成Maven插件,这里就不介绍安装。
注:默认情况下maven的本地仓库会存放在“~/.m2/“目录下。

Maven项目结构


上图是一个Maven项目目录结构,
“pom.xml”是maven主配置文件“项目对象模型”
“src/main/java”是项目的源码目录,所有java源码需要在此目录中
“src/main/resources”是项目的资源目录,所有配置资源需要在此目录中
“src/test/java“是测试目录,所有的测试代码需要放在此目录中
”target“为目标目录,编译及生成好的文件在此目录中,该目录由maven创建及管理,无需手工添加

常用maven命令

命令表达式 说明
mvn clean 清除上次编译及生成文件
mvn compile 对项目进行编译
mvn test 执行全部测试用例
mvn package 对项目进行打包
mvn install 对项目进行打包并安装到本地仓库

注:maven的命令远远不止文中列出的,根据maven的生命周期及插件还有很多命令,可以通过访问官网查询,本文仅仅列出最基础最常用的命令

pom编写基础


<modal version>值为4.0.0,使用maven3需要如此设置
<grounpId>为组id,标识所属的组,一般java源码包命名参照groupId
<artifactId>为构件id,一般为本项目名称
<version>为版本号
<type>为该项目打包类型
<dependencies>为依赖标签,该标签下配置依赖
每个依赖需要用<dependency>标签包围
其中<grounpId>为需要依赖的构件包的组id
其中<artifactId>为需要依赖的构件的id
其中<version>为需要依赖的构件的版本号

构件依赖信息查询

pom中引用的构件信息可以通过Maven仓库查询。


在搜索框输入需要查询构件进行查询,如“spring jdbc”

选择所需要的构建查询详细,

选择需要引用的版本进入

在页面里查看maven配置

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,986评论 19 139
  • |-1-更新内容[6.从仓库解析依赖的机制(重要)] 1Maven仓库作用 仓库用来存储所有项目使用到构件,在ma...
    zlcook阅读 6,166评论 0 25
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,970评论 6 342
  • Maven简单介绍 Maven是一个项目管理工具。强大,但是很容易使用。 它包含了: 一个项目对象模型 (Proj...
    高公子Daniel阅读 4,273评论 4 60
  • 都想在谈判中占据主导位置,那么如何控制局面呢?就是作用今天我们学到的,通过设定一个虚拟的人,来限制自己的谈判...
    李向姿阅读 615评论 0 0