当前位置: 首页 > news >正文

Maven基础(一)

目录

一、Maven基础概念

1. Maven概念

2. Maven的作用

3. 自动化构建步骤

二、Maven安装与配置

1. 下载

2. 配置:

三、Maven约定的目录结构

四‌、Maven中的POM文件‌

1. 概念

2. pom.xml文件的结构

五、Maven坐标

1. 概念

2. 坐标与路径的对应关系

六、Maven仓库

1. 概念

2. Maven仓库分为

3. Maven仓库相关网址


一、Maven基础概念

1. Maven概念

        Maven是一个跨平台项目管理工具,基于Apache License 2.0协议,需JDK 8及以上运行环境。它通过POM(项目对象模型)管理项目依赖、构建流程和插件,解决传统Java项目中的jar包冲突、版本混乱等问题。 ‌   

    

        自动化构建工具发展:

                Make --> Ant --> Maven --> Gradle

2. Maven的作用

(1) 实现jar包的统一管理

        1)jar包仅保存在“仓库”中,通过groupId、artifactId和version引用仓库中的jar包,并不需要真的把jar包复制过来。

    

        2)管理jar包之间的依赖关系,自动关联下载所有依赖的jar,并且不会冲突。

   

        3)若本地仓库没有所需的jar包,Maven会从中央仓库下载后存入本地仓库再引用。

   

(2) 将项目拆分成若干个模块,有助于管理和维护项目。

        每个模块可以独立构建、测试和部署,同时它们又可以相互依赖,形成一个完整的应用程序。

3. 自动化构建步骤

(1) 清理(Clean)‌:
        删除旧编译文件,为重新编译做准备。

    
(2) 编译(Compile)‌:
        将Java源码编译为.class文件。

   
(3) 测试(Test)‌:
        自动执行测试代码,验证功能正确性,支持批量测试。

    
(4) 报告(Report)‌:
        生成测试结果文档,记录测试通过情况。

    
(5) 打包(Package)‌:
        将工程文件打包为可部署格式(如jar/war),支持分布式部署。
                ① java项目打成jar包。
                ② web项目打成war包。

    
(6) 安装(Install):
        将打成的包放到本地仓库。

    
(7) 部署(Deploy):
        将打成的包部署到远程仓库或部署到服务器上准备运行。

   
说明:

        自动化构建运行任何一个阶段的时候,它前面的所有阶段都会被运行,例如我们运行 install 的时候,代码会被编译,测试,打包。

二、Maven安装与配置

1. 下载

        点击 跳转 到Maven官网下载地址,找到Files,点击Link下对应的链接进行下载。

     

        说明:
                Binary tar.gz archive(二进制linux)
                Binary zip archive(二进制Windows)
                Source tar.gz archive(源代码linux)
                Source zip archive(源代码Windows)

2. 配置:

(1) 配置JAVA_HOME
        配置Maven之前需要配置JAVA_HOME,若未配置JAVA_HOME,安装Maven时会出现错误提示“JAVA_HOME not found”。

    
(2) 解压官网下载的Maven程序

    
(3) 配置MAVEN_HOME或M2_HOME

配置根目录:
D:\apache-maven-3.9.11

(4) 配置path

%MAVEN_HOME%\bin

(5) 配完后进行验证

在cmd中执行:
mvn -v
显示Maven版本信息则说明配置成功

(6) 配置本地仓库
        路径:maven安装目录/conf/settings.xml文件
                1)不配置时,默认本地仓库见settings.xml文件

<!-- localRepository (说明:本地仓库)Default: ${user.home}/.m2/repository(说明:本地仓库默认路径)<localRepository> /path/to/local/repo</localRepository>(说明:这句话复制出来后改成自己的路径就是修改了本地仓库配置)
-->

                2)修改本地仓库位置
                        ① 找到maven安装目录/conf/settings.xml文件
                        ② 修改本地仓库目录:

<localRepository> D:/repository</localRepository>

三、Maven约定的目录结构

        Maven项目遵循特定的目录结构约定,例如:src/main/java用于Java源代码,src/test/java用于测试代码等。这种结构有助于工具和插件自动识别和处理代码。

    

        (1) Maven约定的目录结构:

工程名src(源码)main(程序功能代码)java(java源代码)resources(资源文件)test(测试代码)java(java测试源代码)resources(测试资源文件)pom.xml(Maven工程的核心配置文件)

        (2) 使用Maven的原则:

                约定 > 配置 > 编码

四‌、Maven中的POM文件‌

1. 概念

        POM(Project Object Model):项目对象模型的简称。

        Maven项目的核心是pom.xml文件,它定义了项目的元数据、依赖、插件配置等。

2. pom.xml文件的结构

<groupId>域名翻转.项目名</groupId>
<artifactId>模块名</artifactId>
<version>版本号</version><name>名字</name>(<name>一般与<artifactId>一样)<dependencies>(里面可以有多个<dependency>)<dependency>依赖包1</dependency><dependency>依赖包2</dependency><dependency>依赖包3</dependency>
</dependencies>

        例:

<groupId>org.inferno.maventest</groupId>
<artifactId>HelloWorld</artifactId>
<version>1.0.0</version><name>HelloWorld</name><dependencies><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.0.0</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>1.0.0</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>1.0.0</version></dependency>
</dependencies>

五、Maven坐标

1. 概念

        使用groupId、artifactId、version三个元素在仓库中唯一定位一个Maven工程,简称gav

                <groupId>域名翻转+项目名</groupId>
                <artifactId>模块名</artifactId>
                <version>版本号</version>

2. 坐标与路径的对应关系

        例:

        如果settings.xml中本地仓库的位置为:

<localRepository> D:/repository</localRepository>

        如果pom.xml中的坐标为:

<groupId>org.inferno.maventest</groupId>
<artifactId>HelloWorld</artifactId>
<version>1.0.0</version>

        则:此本地仓库放入的位置为:

D:/repository/org/inferno/maventest/HelloWorld/1.0.0

六、Maven仓库

1. 概念

        用于储存资源,管理jar包。

2. Maven仓库分为

        (1) 本地仓库

                当前电脑上配置的Maven仓库目录。

     

        (2) 远程仓库

                ① 私服:一般是公司搭建的私有仓库,私服一般是通过Nexus搭建。

                ② 中央仓库:Maven官方维护的全球唯一仓库。

                ③ 中央仓库镜像:是中央仓库的副本,为了分担中央仓库的流量。

    

        说明:在pom.xml添加依赖后,项目先在本地仓库查找依赖。若没有,则从远程仓库查找并下载,若还是没有,从中央仓库查找。    

3. Maven仓库相关网址

        (1) Maven中央仓库的默认地址
                https://repo.maven.apache.org/maven2/
                说明1:由Apache维护,包含所有标准开源库的依赖项,支持依赖下载,属于官

                             方公共仓库。
                说明2:在Maven配置文件中,若未指定仓库,默认会从此地址获取依赖。 ‌

    
        (2) maven依赖查询网站:
                https://mvnrepository.com/
                https://central.sonatype.com/

                说明:两个提供Maven依赖库的搜索功能,并获得依赖的GAV。

http://www.dtcms.com/a/569988.html

相关文章:

  • MAC-SQL:黄金标准错误
  • 怎样创建基本的网站电子商务网站建设的试卷
  • 网站加盟代理wordpress 本地调试
  • 如何使用AI快速编程实现标注ROS2中sensor_msgs/msg/Image图像色彩webots2025a
  • 专业定制网站开发公司做纺织的用什么网站
  • 20251104让AIO-3576Q38开发板跑Rockchip的原厂Android14进行性能测试【使用天启的DTS】
  • 【案例】三维扫描实现
  • 无人设备遥控器之天线技术分析
  • 宁波市建设工程监理协会网站工程公司年会发言稿
  • 广州旅游团购网站建设中山seo
  • mlir 编译器学习笔记之四 -- 调度
  • 网站建设实施步骤网站源代码上传
  • 2025年 汽车零部件行业MES厂商分析
  • 学校网站制作公司公司企业邮箱怎么填写
  • 网站改版 目的网络建设公司前景
  • Milvus:索引概述(十二)
  • 【25真题】C9之一,质量极高!
  • GitPuk零基础学习,如何进行标签管理
  • Git多分支开发规范与操作指南
  • 国外网站app网址提交大全
  • pulsar SDK在Linux的使用
  • 11.4八股
  • Trae-Agent 使用本地模型
  • 哪个网站开发小程序网站建设与维护的软件
  • Docker(四)_导出容器(不含历史层)
  • GitHub Copilot CLI: How to get started
  • Android ANR的解决方案
  • 亚马逊云科技与OpenAI战略合作深度分析:算力联盟重塑AI产业格局
  • 个人接外包的网站心悦俱乐部官方网站怎么做任务
  • 【Ros2学习】话题的发布与请求