自学内容网 自学内容网

Maven

一、Maven简介:

1.Maven介绍:

Maven是一款为Java项目构建管理、依赖管理的工具(软件),使用Maven可以自动化构建、测试、打包和发布项目,大大提高了开发效率和质量

2.Maven主要作用理解:

(1). 场景概念

场景1:例如项目需要第三方库(依赖),如Druid连接池、MySQL数据库驱动和Jackson等。那么可以将需要的依赖项的信息编写到Maven工程的配置文件,Maven软件就会自动下载并复制这些依赖项到项目中,也会自动下载依赖需要的依赖,确保依赖版本正确无冲突和依赖完整

场景2:项目开发完成后,想要将项目打成.war文件,并部署到服务器中运行,使用Maven软件可以通过一行构建命令(mvn package)快速项目构建和打包,节省大量时间
(2).依赖管理:Maven 可以管理项目的依赖,包括自动下载所需依赖库、自动下载依赖需要的依赖并且保证版本没有冲突、依赖版本管理等。通过Maven可以方便地维护项目所依赖的外部库,而仅仅需要编写配置即可
(3).构建管理:项目构建是指将源代码、配置文件、资源文件等转化为能够运行或部署的应用程序或库的过程,  Maven可以管理项目的编译、测试、打包、部署等构建过程。通过实现标准的构建生命周期,Maven可以确保每一个构建过程都遵循同样的规则和最佳实践。同时,Maven的插件机制也使得开发者可以对构建过程进行扩展和定制。主动触发构建,只需要简单的命令操作即可。

二、基于IDEA的Maven工程创建:

1.Maven工程的GAVIP属性:

Maven中的GAVP是指 GroupId、ArtifactId、Version、Packaging 等四个属性的缩写,其中前三个是必要的,而Packaging属性为可选项。这四个属性主要为每个项目在maven仓库总做一个标识,类似人的《姓-名》。有了具体标识方便maven软件对项目进行管理和互相引用

GAV遵循以下规则:

(1).GroupID格式:com.{公司/BU}.业务线.[子业务线],最多4级

说明:{公司/BU} 例如:alibaba/taobao/tmall/aliexpress等BU一级;子业务线可选

正例:com.taobao.tddl或com.alibaba.sourcing.multilang或com.atguigu.java

(2). ArtifactID 格式:产品线名-模块名

语义不重复不遗漏,先到仓库中心去查证一下

正例:tc-client / uic-api / tair-tool / bookstore

(3).Version版本号格式推荐:主版本号.次版本号.修订号

主版本号:当做了不兼容的 API 修改,或者增加了能改变产品方向的新功能

次版本号:当做了向下兼容的功能性新增(新增类、接口等)

修订号:修复 bug,没有修改方法签名的功能加强,保持 API 兼容性

例如:初始→1.0.0  修改bug → 1.0.1  功能调整 → 1.1.1等

(4).Packaging定义规则:

指示将项目打包为什么类型的文件,idea根据packaging值,识别maven项目类型

packaging属性为jar(默认值),代表普通的Java工程,打包以后是.jar结尾的文件

packaging属性为war,代表Java的web工程,打包以后.war结尾的文件

packaging属性为pom,代表不会打包,用来做继承的父工程


原文地址:https://blog.csdn.net/m0_50460160/article/details/143605009

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!