Maven

Maven

Maven概述

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

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

    1.1 不同的IDE之间,项目结构不一样,不通用

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

    1.3 项目结构

    项目名称

    src

    main 源代码

    java 源代码java文件目录

    resources 源代码配置文件目录

    webapp Web项目核心目录

    test 测试代码目录

    java 测试代码java文件目录

    resources 测试代码配置文件目录

    pom.xml 项目核心配置文件

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

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

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

    3.1 依赖管理就是管理项目所依赖的第三方资源

    3.2 Maven使用标准的坐标配置来管理各种依赖

    3.3 只需要简单的配置就可以完成依赖管理

Maven简介

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

Maven 模型

  1. 项目对象模型 Project Object Model

  2. 依赖管理模型 Dependency

  3. 插件 Plugin

Maven 仓库

  1. 本地仓库 Local Repository 自己计算机上的一个目录

  2. 中央仓库 Central Repository 由Maven团队维护的全球唯一的仓库,中央仓库

  3. 远程仓库(私服) Remote Repository 一般由公司团队搭建的私有仓库

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

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

  • 如果没有,则取中央仓库中下载对应的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/group/public/</url>

    <mirrorOf>central</mirrorOf>

    </mirror>

Maven的基本使用

Maven常用命令

  1. compile:编译

  2. clean:清理

  3. test:测试

  4. package:打包

  5. install:安装

Maven生命周期

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

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

  • clean:清理工作

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

  • site:产生报告,发布站点等

同一生命周期内,执行后面的命令,前面所有命令会自动执行

IDEA配置Maven

IDEA配置Maven环境

  1. 选中IDEA中File --> Settings

  2. 搜索maven

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

    • Maven文件目录

    • settings.xml

    • 本地仓库文件目录

Maven 坐标详解

  1. 什么是坐标?

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

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

  2. Maven坐标的主要组成

    • groupId:定义当前Maven项目隶属组织名称,通常是域名反写

    • artifactId:定义当前Maven项目名称,通常是块名称

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

    <groupId>com.itheima</groupId>
    <artifactId>maven-demo</artifactId>
    <version>1.0-SNAPSOT</version>

    <dependency>
    <groupId>mysql</groupId>
       <artifactId>mysql-connector-java</artifactId>
       <version>5.1.46</version>
    </dependency>

     

IDEA创建Maven项目

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

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

  3. 编写HelloWorld,并运行

IDEA导入Maven项目

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

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

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

  4. Maven Helper File --> Settings --> Plugins --> Marketplace --> 搜索 --> install --> ...

依赖管理

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

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

  3. 定义坐标的 groupId、artifactId、version

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

  5. 可配置自动生效

  6. 本地仓库已存在的jar包可通过alt+insert选中dependency搜索对应坐标,双击选中对那个坐标

依赖范围

  1. 通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围:编译环境、测试环境、运行环境

  2. 依赖范围编译classpath测试classpath运行classpath例子
    compile y y y logback
    test - y - junit
    provided y y - servlet-api
    runtime - y y jdbc驱动
    system y y - 存储在本地的jar包
    import 引入DependencyManagement      
  3. <scope>默认值:compile

posted @   litilestar  阅读(34)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示