Java-Maven3.9.6:Maven依赖管理 / 安装-配置-使用

一、理解Maven

Maven是一个开源的项目管理工具,主要用于构建和管理Java项目、依赖管理和文档生成,它可以自动下载所需的依赖库,并自动构建整个项目。理解Maven需要了解以下几个方面:

  1. 项目对象模型(Project Object Model,POM):Maven使用POM来描述项目的结构和依赖关系。POM是一个XML文件,包含了项目的元数据信息,如项目的组织结构、依赖项、构建配置等。

  2. 项目生命周期(Build Lifecycle):Maven定义了一套标准的构建生命周期,包括了clean、validate、compile、test、package、install和deploy等阶段。每个生命周期阶段都包含了一系列的插件目标,用于执行相应的任务。

  3. 依赖管理:Maven能够自动下载和管理项目的依赖项。通过在POM文件中定义依赖项,Maven可以自动下载所需的库文件,并将其添加到项目的类路径中。

  4. 插件机制:Maven的插件机制使得可以通过插件来扩展和定制构建过程。Maven提供了大量的常用插件,如编译插件、测试插件、打包插件等。同时,也可以编写自定义的插件来满足特定需求。

  5. 构建过程和目录结构:Maven的构建过程是基于约定的,即项目的源代码和资源文件应该按照特定的标准目录结构进行组织。这样做可以使得构建过程更加简洁和可靠。

Maven是一个强大的项目管理工具,能够简化和规范Java项目的构建和管理过程。通过了解上述几个方面,可以更好地理解和使用Maven。

二、Maven 对 Java JDK 版本的要求

Maven 3.x.x 版本需要JDK 1.7及以上版本,Maven 2.x.x版本需要JDK 1.4及以上版本,Maven 1.x.x版本需要JDK 1.3及以上版本。

三、检测自己电脑java jdk的版本

JAVA_HOME指明JDK安装路径,此路径下包括lib,bin等文件夹

echo %java_home%

查看java版本

java -version

查看已安装的 Java 编译器(JDK)的版本号

在命令行中运行javac -version将显示当前安装的 JDK 的版本号。这个命令用于检查 JDK 是否正确安装并确定版本号,以确保可以编译和运行 Java 程序。

javac -version

四、JDK Release Notes

可以看到jdk版本已经到了21

JDK Release Notes

五、下载Maven

5.1、下载

Maven -- Download Apache Maven

5.2、下载完成后,将安装文件解压到指定的目录下

5.3、设置环境变量

5.3.1、找到环境变量

此电脑--右键属性--高级系统设置--环境变量

5.3.2、设置Maven_Home环境变量

新建系统变量

变量名:Maven_Home

变量值:D:\software\maven\apache-maven-3.9.6

5.3.3、修改Path变量值

增加: %Maven_Home%\bin

5.3.4、设置MAVEN_OPTS环境变量

Xms和-Xmx:这些选项用于设置JVM的初始堆大小和最大堆大小。通过调整这些值,您可以更好地管理Maven在构建项目时所需的内存。

变量名:MAVEN_OPTS

变量值:-Xms128m -Xmx512m

5.3.5、检测maven安装

安装成功

5.3.6、mvn help:system

......

mvn help:system是Maven命令的一个子命令,用于显示有关Maven系统环境的详细信息。执行该命令会输出关于Maven版本、Java版本、操作系统信息以及其他相关系统属性的信息。这些信息可以帮助您诊断和调试与构建相关的问题。

输出的信息包括:

Maven版本:Maven的版本号。

Java版本:运行Maven的Java版本号。

操作系统信息:运行Maven的操作系统名称和版本。

JVM信息:运行Maven的Java虚拟机名称和版本。

默认本地仓库:Maven默认的本地仓库路径。

Java Home:Java安装路径。

Java Classpath和Java Library Path:Java类路径和Java库路径。

系统属性:Maven执行期间设置的系统属性列表。

这些信息对于排查构建问题、检查环境配置以及确定Maven和Java版本的兼容性非常有用。

5.3.7、待补充

过程记录

记录一、Maven 与 POM

Maven:Maven本质上是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)

POM:(Project Object Model):项目对象模型

记录二、安装jemeter需要maven环境吗

Maven是一个项目管理工具,主要用于项目的构建、依赖管理等,而jemeter是一个性能测试工具,两者并无直接关联。但是在进行性能测试时,可能会遇到需要使用到某些jar包,而该jar包需要使用Maven进行下载和管理,因此安装jemeter需要maven环境。

参考链接

黑马程序员Maven全套教程,maven项目管理从基础到高级,Java项目开发必会管理工具maven_哔哩哔哩_bilibili

MAVEN的安装与配置教程(超详细版)_maven安装及配置教程-CSDN博客

Maven的安装与配置_maven安装-CSDN博客

Maven安装与配置图文教程_java_脚本之家

Maven -- Download Apache Maven

Maven学习(3)Maven的依赖管理_maven依赖管理_angelbabyfalse的博客-CSDN博客

相关推荐
shaoing1 分钟前
MySQL 错误 报错:Table ‘performance_schema.session_variables’ Doesn’t Exist
java·开发语言·数据库
腥臭腐朽的日子熠熠生辉1 小时前
解决maven失效问题(现象:maven中只有jdk的工具包,没有springboot的包)
java·spring boot·maven
ejinxian1 小时前
Spring AI Alibaba 快速开发生成式 Java AI 应用
java·人工智能·spring
杉之1 小时前
SpringBlade 数据库字段的自动填充
java·笔记·学习·spring·tomcat
圈圈编码1 小时前
Spring Task 定时任务
java·前端·spring
俏布斯1 小时前
算法日常记录
java·算法·leetcode
27669582922 小时前
美团民宿 mtgsig 小程序 mtgsig1.2 分析
java·python·小程序·美团·mtgsig·mtgsig1.2·美团民宿
爱的叹息2 小时前
Java 连接 Redis 的驱动(Jedis、Lettuce、Redisson、Spring Data Redis)分类及对比
java·redis·spring
程序猿chen2 小时前
《JVM考古现场(十五):熵火燎原——从量子递归到热寂晶壁的代码涅槃》
java·jvm·git·后端·java-ee·区块链·量子计算
松韬2 小时前
Spring + Redisson:从 0 到 1 搭建高可用分布式缓存系统
java·redis·分布式·spring·缓存