maven - [01] 概述

Maven —— 项目管理及自动构建工具

 

一、maven是什么

  Maven 是一个由Apache软件基金会提供的项目管理及自动构建工具,主要用于Java编程。它基于项目对象模型(POM)的概念,通过中央信息片段来管理项目的构建、报告和文档等步骤。Maven的核心功能包括合理叙述项目间的依赖关系,通过pom.xml文件的配置获取jar包,无需手动添加jar包。Maven的依赖管理系统允许工程中不直接将jar包导入工程中,而是通过在pom.xml文件中添加所需jar包的坐标来管理jar包的过程。此外,Maven还提供了清晰的项目结构、多工程开发支持以及一键构建项目的功能,支持跨平台使用(Windows、Linux、Mac等),并由纯java语言开发。

 

二、maven安装部署

Maven官网:https://maven.apache.org/download.cgi

Maven官网提供了.tar.gz以及.zip的安装包,用于不同的操作系统。另外还有对应的源码包、校验码、签名等文件。可按需下载。

(1)将安装包下载到本地,解压到合适的目录(我的是D:\Environment\apache-maven-3.8.7

(2)配置maven的系统环境变量MAVEN_HOME:D:\Environment\apache-maven-3.8.7

(3)配置系统环境变量Path:%MAVEN_HOME%\bin

(4)测试安装是否成功:mvn -version

(5)修改settings文件(文件位置:%MAVEN_HOME%\conf),配置本地仓库:D:\Environment\mvnrepo

Maven的本地仓库,在安装Maven后不会创建,在第一次执行maven命令的时候才被创建。运行Maven的时候,Maven所需要的任何构建都是直接从本地仓库获取的。如果本地仓库没有,它会首先尝试从远程仓库下载构件到本地仓库,然后再使用本地仓库的构件。默认情况下,本地仓库位置在C:\Users\[用户名]\.m2\repository

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 
   http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <localRepository>D:\Environment\mvnrepo</localRepository>
</settings>

 

 

三、maven pom的概念

  POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。pom中可以指定以下配置

  • 项目依赖
  • 插件
  • 执行目标
  • 项目构建profile
  • 项目版本
  • 项目开发者列表
  • 相关邮件列表信息

(1)

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>8</maven.compiler.source>
    <maven.compiler.target>8</maven.compiler.target>
    <spring.version>5.2.2.RELEASE</spring.version>
    <slf4j.version>1.6.6</slf4j.version>
    <log4j.version>1.2.12</log4j.version>
    <mysql.version>8.0.11</mysql.version>
    <mybatis.version>3.4.5</mybatis.version>
    <jackson.version>2.15.4</jackson.version>
</properties>

(2)项目依赖

<dependencies>
    <dependency>
      <!-- 依赖的groupId -->
      <groupId>org.springframework</groupId>
      <!-- 依赖的artifactId -->
      <artifactId>spring-aop</artifactId>
      <!-- 依赖的版本号 -->
      <version>${spring.version}</version>
    </dependency>
    ...
  </dependencies>

 

 

 

 

 

 

 

 

 

— 业精于勤荒于嬉,行成于思毁于随 —

posted @ 2024-06-03 11:15  HOUHUILIN  阅读(4)  评论(0编辑  收藏  举报