maven

发布时间 2023-11-13 00:01:50作者: 牵机
1. 简介
1.1 软件是一个工程(软件工程)
软件工程:为了能够实现软件的流水线式生产,在设计和构建软件时能够有一种规范
和工程化的方法,提出了软件工程的概念。
软件开发需要编译代码-------->开发人员自己测代码------->把代码打包----->部署到测试
服务器-------->测试人员测试------>测试人员测出 bug---------->开发人员需要修改 bug------->把
代码打包----->部署到测试服务器-------->测试人员测试-------->直到测试人员测试成功-->符合
功能需求。 效率比较低,maven 可以让我们从上面的工作中解放出来。
 
  
1.2 传统项目开发中存在的问题
项目里需要的 jar 包,需要手动下载并且引入
jar 包如果有版本兼容问题,需要手动解决
项目中需要的 jar 包又依赖其他的 jar 包,需要手动去解决
 
1.3 Maven 概述
Maven 是 Apache 软件基金组织去维护的一款自动化构建工具,专注于服务 java 平台的项目
的构建和依赖管理。
Maven 是目前最流行的自动化构建工具,在大型项目开发中必不可少的工具。
优点:
Maven 可以整合多个项目之间的关系,根据业务和分层需要任意拆分一个项目
Maven 提供规范的管理各个常用的 jar 包及其各个版本,并且可以自动下载自动引入
到项目中。
Maven 可以根据指定版本自动解决 jar 包版本兼容的问题
Maven 可以把 jar 包所依赖的其他 jar 包一并自动下载引入项目中。
类似于自动化工具 Ant Gradle.
构建过程: 清理 编译 测试 报告 打包 安装 部署
 
构建(build),是面向过程的(从开始到结尾的多个步骤),涉及到多个环节的协同工作。 构
建过程的几个主要环节
①清理:删除以前的编译结果,为重新编译做好准备。
②编译:将 Java 源程序编译为字节码文件。
③测试:针对项目中的关键点进行测试,确保项目在迭代开发过程中关键点的正确性。
④报告:在每一次测试后以标准的格式记录和展示测试结果。
⑤打包:将一个包含诸多文件的工程封装为一个压缩文件用于安装或部署。Java 工程对应
jar 包,Web 工程对应 war 包。
⑥安装:在 Maven 环境下特指将打包的结果——jar 包或 war 包安装到本地仓库中。
⑦部署:将打包的结果部署到远程仓库或将 war 包部署到服务器上运行
 
1.4 Maven 的核心概念
1.POM
2.约定的目录结构
3.坐标
4.依赖管理
5.仓库管理
6 生命周期
7.插件
8.继承