Java课题笔记~Maven基础知识

一、什么是Maven?

Maven是专门用于管理和构建Java项目的工具。

它的主要功能有:

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

1、标准化的项目结构

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

2、标准化的构建流程

Maven提供了一套简单的命令来完成项目构建。

3、依赖管理

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

常见的项目构建工具:


1、 Maven 使用标准的 坐标 配置来管理各种依赖
2、 只需要简单的配置就可以完成依赖管理

二、Maven****简介

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

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

Maven 作用:

  1. 标准化的项目结构
  2. 标准化的构建流程
  3. 方便的依赖管理

Maven 模型:

仓库分类:

  • 本地仓库:自己计算机上的一个目录
  • 中央仓库:由Maven团队维护的全球唯一的仓库
  • 远程仓库(私服):一般由公司团队搭建的私有仓库

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

如果有,则在项目直接引用;
如果没有,则去中央仓库中下载对应的jar包到本地仓库。

还可以搭建远程仓库,将来jar包的查找顺序则变为:
本地仓库 >远程仓库 >中央仓库

三、Maven 安装配置

步骤

Maven安装配置

1.解压apache-maven-3.6.1.rar 既安装完成

2.配置环境变量:MAVEN_HOME 为安装路径,在Path添加%MAVEN_HOME%/bin目录

3.配置本地仓库:修改conf/settings.xml中的<localRepository> 为一个指定目录

4.配置阿里云私服:修改conf/settings.xml 中的<mirrors>标签,为其添加如下子标签

java 复制代码
<mirror>  
<id>alimaven</id>  
<name>aliyun maven</name>  
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>          
</mirror>

四、Maven 基本使用

Maven 常用命令

compile: 编译

clean:清理

test:测试

package: 打包

install: 安装

Maven****生命周期

Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件。

Maven 对项目构建的生命周期划分为3套:

  1. 1、clean:清理工作
  2. 2、default::核心工作,例如编译,测试,打包,安装等
  3. 3、site:产生报告,发布站点等

default****构建生命周期:

五、IDEA 配置 Maven

1、IDEA 配置 Maven 环境

1、选择IDEA中 File--> Settings


2、搜索maven


3、设置IDEA使用本地安装的 Maven,并修改配置文件路径

2、Maven****坐标详解

什么是坐标?

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

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

Maven 坐标主要组成?

  1. groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如:comitheima)
  2. artifactld:定义当前Maven项目名称 (通常是模块名称,例如 order-service、goods-service)
  3. version:定义当前项目版本号

3、IDEA 创建 Maven 项目

1.创建模块,选择Maven,点击Next

2.填写模块名称,坐标信息,点击finish,创建完成

3.编写 HelloWorld,并运行

4、IDEA 导入 Maven 项目

1.选择右侧Maven面板,点击 +号

2.选中对应项目的pom.xml文件,双击即可


3.如果没有Maven面板,选择
View > Appearance > Tool Window Bars

5、配置Maven-Helper插件

1、选择IDEA中 File--> Settings

2、选择 Plugins

3、搜索 Maven,选择第一个 Maven Helper,点击Install安装,弹出面板中点击Accept

4、重启IDEA

六、依赖管理

步骤
使用坐标导入jar 包

1、在 pom.xml 中编写 <dependencies> 标签

2、在 <dependencies> 标签中 使用 <dependency> 引入坐标

3、定义坐标的 groupld,artifactld,version

4、点击刷新按钮,使坐标生效

步骤
使用坐标导入 jar 包- 快捷方式

1、在pom.xml中按 alt + insert,选择 Dependency

2、在弹出的面板中搜索对应坐标,然后双击选中对应坐标

3、点击刷新按钮,使坐标生效

使用坐标导入 jar 包一自动导入

1、选择IDEA中 File --> Settings

2、在弹出的面板中找到 Build Tools

3、选择Any changes,点击ok 即可生效

依赖范围

通过设置坐标的依赖范围(scope),可以设置 对应jar包的作用范围:

编译环境、测试环境、运行环境

l<scope>默认值:compile

相关推荐
牛马大师兄1 小时前
STM32实现低功耗管理使用配置知识梳理笔记
笔记·stm32·单片机·嵌入式硬件·物联网·低功耗
哈皮Superman1 小时前
【Research】MagicFuzzer: Scalable deadlock detection for large-scale applications
java·开发语言·数据库
I'm Jie1 小时前
(二)Gradle 依赖仓库及安全凭证配置
java·spring boot·spring·gradle·maven
牢七1 小时前
CATWIFI
java
信码由缰2 小时前
单体架构中的事件驱动架构:Java应用程序的渐进式重构
java
初学小白...2 小时前
实现Runnable接口
java·开发语言
墨着染霜华2 小时前
Java Optional orElse orElseGet orElseThrow()
java
czhc11400756633 小时前
JAVA1026 方法;类:抽象类、抽象类继承;接口、接口继承 Linux:Mysql
java·linux·mysql
chushiyunen3 小时前
neo4j图数据库笔记
数据库·笔记·neo4j
一 乐3 小时前
宠物管理|宠物店管理|基于SSM+vue的宠物店管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·宠物