Maven

Maven是专门用于管理和建构Java项目的工具,它的主要功能有:

  • 提供了一套标准化的项目结构
  • 提供了一套标准化的构建流程(编译,测试,打包,发布.....)
  • 提供了一套依赖管理机制

标准化的项目结构:

标准化的构建流程:

依赖管理:

依赖管理其实就是管理你项目所依赖的第三方资源(jar包,插件.....)

Maven简介

Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建,报告和文档。

官网:http://maven.apache.org/

仓库分类:

本地仓库:自己计算机上的一个目录

中央仓库:由Maven团队维护的全球唯一的仓库,地址:http://repo1.maven.org/maven2/

远程仓库(私服):一般由公司团队搭建的私有仓库。

  • 当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:

如果有,则在项目直接引用;

如果没有,则去中央仓库中下载对应的jar包到本地仓库。

  • 还可以搭建远程仓库,将来jar包的查找顺序则变为:

本地仓库→远程仓库→中央仓库

Maven的常用命令

  • compile:编译
  • clean:清理
  • test:测试
  • package:打包
  • install:安装

Maven的生命周期

  • Maven 构建项目生命周期描述的是一次构建过程经历经历了多少个事件
  • Maven对项目构建的生命周期分为3套

clean:清理工作

default:核心工作 ,例如编译,测试,打包,安装等

sit:产生报告,发布站点等

Maven的坐标详解

什么是坐标?

Maven中的坐标是资源的唯一标志

使用坐标来定义项目或引入项目中需要的依赖

Maven坐标的主要组成

  • groupld:定义当前Maven项目隶属组织名(通常是域名反写,例如:com.ithemia)
  • artifactld:定义当前Maven项目的名称(通常是模块名称,例如order_service,goods-service)
  • version:定义当前项目版本号
相关推荐
love_muming5 小时前
二叉树操作全解析:从递归到层序遍历
java·数据结构·算法·二叉树
小的~~5 小时前
ThreadLocal 、InheritableThreadLocal 与 TransmittableThreadLocal 的进阶指南
java·开发语言
北极糊的狐5 小时前
钉钉小程序报错data.formatTime is not a function是因为 axml 模板中不能直接调用 Page 内自定义方法!
java·小程序·钉钉
·薯条大王14 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
ZJH__GO17 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
程序员黑豆17 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
命运之光18 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
凤山老林18 小时前
Spring Boot @Async 线上实战:从默认配置到生产级线程池治理
java·spring boot·后端
marvelyu19 小时前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构
java·大数据·数据库
AI人工智能+电脑小能手20 小时前
大白话说Java设计模式-04-工厂方法模式(业务实战篇)
java·设计模式·工厂方法模式·架构设计·代码解耦