maven

maven

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

​ 1.提供了一套标准化的项目结构

​ 2.提供了一套标准化的构建流程(编译、测试、打包、发布...)

​ 3.提供了一套依赖管理机制

1.不同IDE之间,项目结构不一样,不通用

maven提供了一套标准化的项目结构,所有IDE使用maven构建的项目结构完全一样,所有IDE创建的maven项目可以通用

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

maven简介

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

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

​ 项目对象模型 依赖管理模型 插件

仓库

分类:

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

中央仓库:有Maven团队维护的全球唯一的仓库

​ 地址:https://repo1.maven.org/maven2/

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

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

​ 如果有,则在项目直接使用

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

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

​ 本地仓库->远程仓库->中央仓库

Maven常用命令

compile: 编译

clean: 清理

test: 测试

package: 打包

install: 安装

Maven坐标

什么是maven坐标

​ maven中的坐标是资源的唯一标识

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

maven坐标的主要组成

​ groupld:定义当前maven项目隶属组织名称(通常是域名反写,例如:com.itheima)

​ artifactld:定义当前maven项目名称(通常是模块名称,例如:order-service、goods-service)

​ version:定义当前项目版本号

当前maven项目名称(通常是模块名称,例如:order-service、goods-service)

​ version:定义当前项目版本号

相关推荐
xzl046 小时前
小智服务器:设备的各种MCP消息、初始化响应、工具列表和工具调用响应
java·网络·python
夜勤月6 小时前
拒绝线程死锁与调度延迟:深度实战 C++ 内存模型与无锁队列,构建高并发系统级中枢
java·c++·spring
洛文泽7 小时前
BigDecimal类型的数组转为字符串,并且去掉无效的0
java
a程序小傲7 小时前
SpringBoot 秒实现在线 Word 编辑、协同、转化等功能
java·开发语言·spring boot·后端·spring·word·深度优先
小北方城市网7 小时前
微服务接口熔断降级与限流实战:保障系统高可用
java·spring boot·python·rabbitmq·java-rabbitmq·数据库架构
Remember_9937 小时前
【LeetCode精选算法】前缀和专题一
java·开发语言·数据结构·算法·leetcode·eclipse
indexsunny7 小时前
互联网大厂Java面试实战:Spring Boot与微服务在电商场景中的应用
java·spring boot·redis·微服务·kafka·spring security·电商
a程序小傲7 小时前
国家电网Java面试被问:API网关的JWT令牌验证和OAuth2.0授权码流程
java·开发语言·spring boot·后端·面试·职场和发展·word
tqs_123457 小时前
单例模式代码
java·开发语言·单例模式
2501_944526427 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 多语言国际化实现
android·java·开发语言·javascript·flutter·游戏