2024/10/22日 日志 --》关于Maven的基础学习 笔记整理
今天正式步入Maven的学习,以下是基本的笔记整理。
点击查看代码
-- Maven
-- · Maven是专门用于管理和构建Java项目的工具,它的主要功能有:
-- ·提供了一套标准化的项目结构
-- ·提供了一套标准化的构建流程(编译,测试,打包,发布...)
-- ·提供了一套依赖管理机制
-- · 标准化的项目结构
-- 不同的IDE之间,项目结构不一样,不通用
-- Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的IDE项目可以通用
-- 标准化项目结构示例:
-- ->maven-project 项目名称
-- ->src 源代码和测试目录
-- ->main 源代码目录
-- ->java 源代码java文件目录
-- ->resources 源代码配置文件目录
-- ->webapp web项目核心目录
-- ->test 测试代码目录
-- ->java 测试代码java目录
-- ->resources 测试代码配置目录
-- Mpom.xml 项目核心配置文件
-- ·标准化的构建流程
-- 项目结构--》编译--》测试--》打包--》发布
-- Maven提供了一套简单的命令来完成项目构建
-- ·依赖管理
-- 依赖管理其实就是管理你项目所依赖的第三方资源(jar包,插件...)
-- 1.下载jar包 2.复制jar包到项目 3.将jar包加入工作环境
-- 1.Maven 使用标准的坐标配置来管理各种依赖
-- 2.只需要简单的配置就可以完成依赖管理
--
--
-- Maven简介
-- ·Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念
-- 通过一小段描述信息来管理项目的构建、报告和文档
-- ·官网: http://maven.apache.org/
-- ·作用: 1.标准化的项目结构 2.标准化的构建结构 3.方便的依赖管理
-- Maven模形:
-- pom.xml |---》项目对象模型(POM)《---》依赖管理模型(Dependency)|---》仓库
-- | 构建生命周期/阶段 Build lifecycle & phases |
-- | ^ ^ ^ ^ |
-- |--------|----------|-----------|---------------|-----|
-- | 插件 插件 插件 插件 |
-- ·项目对象模型(Project Object Model)
-- ·依赖管理模型(Dependency)
-- ·插件(Plugin)
-- ·仓库分类:
-- ·本地仓库(Local Repository):自己计算机上的一个目录
-- ·中央仓库(Central Repository):由Maven团队维护的全球唯一的仓库
-- · 地址:https://repo1.maven.org/maven2/
-- ·远程仓库(私服)(Remote Repository):一般由公司团队搭建的私有仓库
-- · 当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:
-- ·如果有,则在项目中直接引用
-- ·如果没有,则去中央仓库中下载对应的jar包到本地仓库
-- Maven安装配置
-- 1.解压安装
-- 2.配置环境变量MAVEN_HOME为安装路径的bin目录
-- 3.配置本地仓库:修改 conf/settings.xml 中的<localRepository>为一个指定目录
-- 4.配置阿里云私服:修改conf/settings.xml中的<mirrors>标签,为其添加如下子标签
-- <mirror>
-- <id>alimaven</id>
-- <name>aliyun maven</name>
-- <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
-- <mirrorOf>central</mirrorOf>
-- </mirror>
--
--
-- Maven常用命令
-- · compile:编译
-- · clean:清理
-- · test:测试
-- · package:打包
-- ·install:安装
-- Maven生命周期
-- 简述主要:
-- ·Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件
-- ·Maven对项目构建的生命周期划分为3套
-- clean:清理工作
-- default:核心工作,例如编译,测试,打包,安装等
-- site:产生报告,发布站点等
-- 注意:同一生命周期内,执行后面的命令,前面的所有命令自动执行
--------------Moonbeams.