Java学习————Maven

  • Post author:
  • Post category:java

Maven简介

Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。
优点:
1.不需要手工找jar包,去下载。
2.是一个模块化的项目构建工具,方便维护与发布。

Maven安装与配置

1.首先要在官网下载maven,下载地址:https://maven.apache.org/download.cgi
下载下来的是一个压缩包,自己选择解压到一个目录下
2.配置环境变量
我这是是Mac os的配置方法:
打开终端输入vim ~/.bash_profile,若不存在就新建一个,然后在最末尾添加上

export MAVEN_HOME=/usr/local/apache-maven-3.6.2
export PATH=$PATH:$MAVEN_HOME/bin                                    

保存并退出,然后再输入source ~/.bash_profile更新环境变量,然后再输入mvn -v
若看到这样说明环境变量已经配置成功了
在这里插入图片描述
然后去到maven的根目录,创建一个新的文件夹作为maven的仓库,再去到conf目录下修改一下setting.xml文件

<!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
-->

可以看到默认仓库为${user.home}/.m2/repository,我们可以在注释外添加一行:
<localRepository>/usr/local/apache-maven-3.6.2/rspository</localRepository>
这样我们就将maven到仓库设置成了我们自己创建的文件夹

Maven文件结构

在这里插入图片描述
上图为一个maven项目的文件结构,src文件夹里包含了main和test文件夹,main文件夹里存放的是源代码,test文件夹里存放的是测试代码,target文件夹里存放的是源代码编译后的class文件。
下面的pom.xml文件则是maven项目的核心文件。

Maven POM

POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。
执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。
POM 中可以指定以下配置:

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

下面是maven项目刚创建的pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!-- 模型版本 -->
    <modelVersion>4.0.0</modelVersion>
    <!-- 公司或者组织的唯一标志 -->
    <groupId>com.test</groupId>
    <!-- 项目的唯一ID,artifactId来区分不同的项目 -->
    <artifactId>project</artifactId>
    <!-- 版本号 -->
    <version>1.0</version>
</project>
节点 描述
project 工程的根标签
modelVersion 模型版本需要设置为 4.0
groupId 这是工程组的标识。它在一个组织或者项目中通常是唯一的。例如,一个银行组织 com.companyname.project-group 拥有所有的和银行相关的项目
artifactId 这是工程的标识。它通常是工程的名称。例如,消费者银行。groupId 和 artifactId 一起定义了 artifact 在仓库中的位置
version 这是工程的版本号。在 artifact 的仓库中,它用来区分不同的版本

Maven的主要功能

开始我们说了,Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。而使用maven有一个很明显的好处就是自动导入jar包,不需要自己去下载导入。
需要什么jar包就可以去官网搜索:https://mvnrepository.com/
搜索你需要的jar包,选择需要的版本,然后复制依赖语句到pom.xml里后maven就可以帮你自动下载到本地仓库并导入jar包

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</version>
</dependency>

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.test</groupId>
    <artifactId>TestMaven</artifactId>
    <version>1.0-SNAPSHOT</version>
    
    <dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>
    </dependencies>
    
</project>

版权声明:本文为weixin_44069664原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。