Java项目管理工具Maven

    科技2025-09-04  36

    Maven 解决的问题

    在我们进行进行开发的时候我们需要很多的jar包,并且jar包直接还可以有冲突可以编译项目 (但是我们一般使用集成开发环境去构建项目)单元测试的时候我们不适合maven 的时候我们要一个一个的去启动(有maven 我们可以快速进行单元测试)项目打包

    maven 的作用

    依赖管理

    maven 工程对jar包 的管理过程

    项目的一键构建

    指的是项目从编译,测试,运行,打包,安装,部署,这一个整个构建的过程交给maven

    maven 有内置的tomcat

    maven 项目和传统项目的区别

    传统的web 项目jar包在 项目中,maven 项目的jar 包放在本地仓库中

    安装和文件配置

    安装包下载

    http://maven.apache.org/download.cgi

    目录结构

    bin 二进制文件的存储位置 命令文件存储位置boot maven 自身运行需要的类加载器conf 配置文件 settings.xml 重要的配置文件lib maven 运行依赖的jar包

    环境配置

    window系统环境变量中设置

    jdk 环境配置(懂的都懂)maven 环境配置 MAVEN_HOME C:\Tool\maven\apache-maven-3.6.3Path 添加 %MAVEN_HOME%\bin

    maven 仓库

    本地仓库

    我们的电脑存储的jar 包的地方

    远程仓库(私服)

    一般是公司使用的一种jar包管理方式 ,这样的好处是在公司的人在局域网内可以去远程仓库获取自己需要的jar 包,这样也方便的jar 包的统一管理。

    远程仓库的jar 包可以来自我们本地上传和远程仓库下载

    中央仓库

    存储几乎所有开源框架的jar 包

    maven 配置文件

    <?xml version="1.0" encoding="UTF-8"?> <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>C:/Tool/maven/apache-maven-3.6.3/repository</localRepository> <pluginGroups> </pluginGroups> <proxies> </proxies> <servers> </servers> <mirrors> <!--设置国内的阿里云镜像加速--> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors> <profiles> </profiles> </settings>

    maven 标准目录

    核心代码部分

    src/main/java

    配置文件部分

    src/main/resources

    测试代码部分

    src/test/java

    测试配置文件

    src/test/resources

    maven 命令

    清除 target 目录

    mvn clean #删除所有的编译出的东西 删除 target 目录

    编译

    mvn compile #编译 将 maven/java 下的java文件编译成class 文件 放在 target 目录下的classe

    测试

    mvn test #编译 将 maven/java 下的java文件编译成class 文件 放在 target 目录下的classe #进行测试代码的编译 和 生成class文件 放在 test-classe 文件夹下 #因为单元测试需要用到我们的核心代码所以我们的核心代码也会被打包

    打包

    mvn package #编译 将 maven/java 下的java文件编译成class 文件 放在 target 目录下的classe #进行测试代码的编译 和 生成class文件 放在 test-classe 文件夹下 #将项目打包 #将项目打成包 打包的类型由pom.xml的 <packaging>jar</packaging>决定

    安装

    mvn install #编译 将 maven/java 下的java文件编译成class 文件 放在 target 目录下的classe #进行测试代码的编译 和 生成class文件 放在 test-classe 文件夹下 #将项目打包 #将生成的jar 包 打包放到我们本地仓库中

    maven 生命周期

    一键构建的过程

    清除项目的编译信息 mvn clean编译 mvn compile打包 mvn package安装 mvn install发布 mvn deploy

    生命周期

    清理生命周期

    mvn clean

    默认生命周期

    编译 mvn compile打包 mvn package安装 mvn install发布 mvn deploy

    站点生命周期

    maven概念模型图

    依赖的管理

    项目对象模型

    项目自身信息项目运行依赖的jar信息项目运行的环境信息

    依赖管理模型

    <dependency> <!--公司组织的名称---> <groupId>org.mybatis.spring.boot</groupId> <!--项目名---> <artifactId>mybatis-spring-boot-starter</artifactId> <!--版本号---> <version>1.3.2</version> </dependency>

    一键构建

    默认的生命周期

    ​ 依赖于maven 底层的插件

    编译 mvn compile打包 mvn package安装 mvn install发布 mvn deploy

    idea依赖maven

    设置位置

    在不联网的时候通过自己下载的插件构建maven 项目

    Processed: 0.010, SQL: 8